CS1101 de erro do compilador

Mensagem de erro

O modificador de parâmetro 'ref' não pode ser usado com 'this'.

Quando o this palavra-chave modifica o primeiro parâmetro de um método estático, ele sinaliza ao compilador que o método é um método de extensão. Não há outros modificadores são necessários ou permitidos no primeiro parâmetro de um método de extensão.

Exemplo

O exemplo a seguir gera CS1101:

// cs1101.cs
// Compile with: /target:library
public static class Extensions
{
    // No type parameters.
        public static void Test(ref this int i) {} // CS1101

    // Single type parameter.
        public static void Test<T>(ref this T t) {}// CS1101

    // Multiple type parameters.
        public static void Test<T,U,V>(ref this U u) {}// CS1101
}

Consulte também

Referência

Métodos de extensão (Guia de programação C#)

Este (Referência C#)

ref (Referência C#)