Not sure what the reason is; in my own testing, this seems to be due to the combination of having one or more default parameters and the params argument in the constructor definition. However, if it holds you, there is a lazy workaround:
public class Myc : Attribute { public Myc (params int[] a) {} public Myc( bool b, params int[] a ) { Console.WriteLine( "in ctor" ); } }
The params argument with a value other than default, and one params argument both look fine.
Not quite an explanation, but uh ...
source share