C# Error CS1908 – The type of the argument to the DefaultParameterValue attribute must match the parameter type

C# Error

CS1908 – The type of the argument to the DefaultParameterValue attribute must match the parameter type

Reason for the Error & Solution

The type of the argument to the DefaultValue attribute must match the parameter type

This error is generated when you use the wrong argument for the attribute value. Use a value that matches the parameter type.

Example

The following sample generates CS1908.

// CS1908.cs  
// compile with: /target:library  
using System.Runtime.InteropServices;  
  
public interface ISomeInterface  
{  
   void Bad([Optional] [DefaultParameterValue("true")] bool b);   // CS1908  
  
   void Good([Optional] [DefaultParameterValue(true)] bool b);   // OK  
}