Visual Studio 2012 CallerMemberName could not be found

本文关键字:not be found could CallerMemberName Studio 2012 Visual | 更新日期: 2023-09-27 18:08:27

我刚刚安装了Visual Studio 2012,所以我可以利用更好的方法在Silverlight中实现MVVM。

我想做的第一件事是开始使用[CallerMemberName]属性,这样我就不必硬编码属性名称字符串了。

我创建了一个新的Silverlight应用程序,创建了一个新的类,包括'using System.Runtime '。然后继续键入[CallerMemberName]。然而,我得到了错误:

"类型或命名空间名称'CallerMemberNameAttribute'找不到(您是否缺少using指令或程序集引用?)"

但是,我确实包含了using指令,并且没有其他需要引用的程序集。

这让我很恼火,因为没有谷歌搜索返回任何关于为什么我可能无法在VS2012/Silverlight中使用它的信息。我该如何解决这个问题?

Visual Studio 2012 CallerMemberName could not be found

看起来你瞄准的Silverlight版本不包含该属性。

不过,没关系;你可以自己定义它:

namespace System.Runtime.CompilerServices {
    sealed class CallerMemberNameAttribute : Attribute { }
}