C# Error CS1667 – Attribute ‘{0}’ is not valid on property or event accessors. It is only valid on ‘{1}’ declarations.

C# Error

CS1667 – Attribute ‘{0}’ is not valid on property or event accessors. It is only valid on ‘{1}’ declarations.

Reason for the Error & Solution

Attribute ‘attribute’ is not valid on property or event accessors. It is valid on ‘declaration type’ declarations only.

This error occurs if you use an attribute on a property or event accessor, when it should be on the property or event itself. This error could occur with the attributes , , and .

Example

The following sample generates CS1670:

// CS1667.cs  
using System;  
  
public class C  
{  
    private int i;  
  
    //Try this instead:  
    //[Obsolete]  
    public int ObsoleteProperty  
    {  
        [Obsolete]  // CS1667  
        get { return i; }  
        set { i = value; }  
    }  
  
    public static void Main()  
    {  
    }  
}  

Leave A Reply

Your email address will not be published. Required fields are marked *

You May Also Like

C# Compiler Error CS0442 – ‘Property’: abstract properties cannot have private accessors Reason for the Error You’ll get this error...
This is a really simple one . Below is a simple example of an enum called “Designation” defined with the...
This blog post explain the usage of the Checked Block in .NET and how you can use them in Visual...