C# Error CS0655 – ‘{0}’ is not a valid named attribute argument because it is not a valid attribute parameter type

C# Error

CS0655 – ‘{0}’ is not a valid named attribute argument because it is not a valid attribute parameter type

Reason for the Error & Solution

‘parameter’ is not a valid named attribute argument because it is not a valid attribute parameter type

See for a discussion of valid parameter types for an attribute.

Example

The following sample generates CS0655:

// CS0655.cs  
using System;  
  
class MyAttribute : Attribute  
{  
    // decimal is not valid attribute parameter type  
    public decimal d = 0;  
    public int e = 0;  
}  
  
[My(d = 0)]   // CS0655  
// Try the following line instead:  
// [My(e = 0)]  
class C  
{  
    public static void Main()  
    {  
    }  
}