Compiler Error CS1104

A parameter array cannot be used with 'this' modifier on an extension method.

The first parameter of an extension method cannot be a params array.

To correct this error

  • Remember that the first parameter of an extension method definition specifies which type the method will "extend". It is not an input parameter. Therefore, it makes no sense to have a params array in this location. If you do have to pass in a params array, make it the second parameter.

Example

The following example generates CS1104:

// cs1104.cs
// Compile with: /target:library
public static class Extensions
{
    public static void Test<T>(this params T[] tArr) {} // CS1104
} 

See Also

Reference

Extension Methods (C# Programming Guide)

params (C# Reference)