C# Error CS1104 – A parameter array cannot be used with ‘this’ modifier on an extension method

C# Error

CS1104 – A parameter array cannot be used with ‘this’ modifier on an extension method

Reason for the Error & Solution

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

  1. 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  
}