我正在对方法属性使用字符串插值,例如 -
const string User = "SomeUser";
const string Admin = "Admin";
.
.
.
[Authorize(Roles = $"{User},{Admin}")]
public IHttpActionResult Get()
但 Visual Studio 给出了一个错误 -
属性参数必须是常量表达式、typeof 表达式
或属性参数类型的数组创建表达式
当我尝试“+”进行字符串连接时,它起作用了
[Authorize(Roles = User + "," + Admin)]
public IHttpActionResult Get()
就算我换了","
with ','
它给出了同样的错误。
我想知道编译器如何处理字符串插值?
字符串插值转换为string.Format
这不是它所需要的编译时间常数
请评论这个问题了解更多信息
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)