我刚刚安装了 Visual Studio 2012,因此我可以利用更好的方法通过 Silverlight 实现 MVVM。
我想做的第一件事是开始使用 [CallerMemberName] 属性,这样我就不必对属性名称字符串进行硬编码。
我创建了一个新的 Silverlight 应用程序,创建了一个新类,包括“使用 System.Runtime.CompilerServices”,然后继续键入 [CallerMemberName]。但是,我收到错误:
“找不到类型或命名空间名称‘CallerMemberNameAttribute’(是否缺少 using 指令或程序集引用?)”
但是,我确实包含了 using 指令,并且没有其他程序集需要引用。
这让我感到困惑,因为没有 Google 搜索返回任何关于为什么我可能无法在 VS2012/Silverlight 中使用它的信息。我该如何解决这个问题?
最佳答案
看起来您所针对的 Silverlight 版本不包含该属性。
不过,没关系;你可以简单地自己定义它:
namespace System.Runtime.CompilerServices {
sealed class CallerMemberNameAttribute : Attribute { }
}
关于c# - 找不到 Visual Studio 2012 CallerMemberName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24191359/