title: CustomAttribute Name Can Be Simplified
body: <p>I have a class with a custom attribute defined like this:</p>
  
  <pre><code>[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; }
  
  }
  </code></pre>
  
  <p>Visual Studio highlights the line</p>
  
  <pre><code>[MyAttribute("ClassName")]
  </code></pre>
  
  <p>with this message: </p>
  
  <blockquote>
    <p>IDE0001 : Name Can Be Simplified.</p>
  </blockquote>
  
  <p>It suggests to shorten the attribute definition to My("ClassName") which doesn't work because the attribute is not defined as "My".</p>
  
  <p>This suggestion seems to be based on the way the default attributes are implemented where either MyAttribute or My could be used.  How would I implement my custom attribute to accept either My or MyAttribute like the default attributes do?</p>