我有一个类定义如下定义的自定义属性:
[AttributeUsage(AttributeTargets.Property)]
public class MyAttribute : Attribute
{
private string name;
public MyAttribute(string name)
{
this.name = name;
}
}
public class MyClass
{
[MyAttribute("ClassName")]
public string ClassName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
Visual Studio突出显示该行
[MyAttribute("ClassName")]
Run Code Online (Sandbox Code Playgroud)
有了这条消息:
IDE0001:名称可以简化.
它建议将属性定义缩短为My("ClassName"),这不起作用,因为该属性未定义为"My".
此建议似乎基于在可以使用MyAttribute或My的情况下实现默认属性的方式.我如何实现我的自定义属性以接受My或MyAttribute,就像默认属性一样?