【发布时间】:2012-03-16 15:36:07
【问题描述】:
如果我尝试
const char NoChar = (char)8470; //№
const char TmChar = (char)8482; //™
const string IdDisplayName = "Clements" + TmChar + ' ' + NoChar;
会抛出编译错误:
分配给“{0}”的表达式必须是常量
据我了解,发生此错误是因为当一个 char 是因为字符串连接运算符 (+) 在内部调用连接对象上的ToString。
我的问题是是否有办法(非托管?)来做到这一点。
我需要将该常量作为属性传递,它应该在客户端生成。
更丑陋的解决方法(将根据您的答案查看更丑陋的地方......)是对该属性进行子类化(它是密封的,必须进行一些反编译和复制粘贴工作)并将其嵌入为非常量将有可能。
【问题讨论】:
-
这篇文章可能对你有所帮助stackoverflow.com/questions/3394899/…