Kompilatorfel CS8140

visas redan i gränssnittslistan på typen med olika tuppelns elementnamn, som.

Exempel

Följande exempel genererar CS8140:

// CS8140.cs (11,7)

interface I<T>
{
    T GetValue();
}

interface I2 : I<(int c, int d)>
{
}

class C : I<(int a, int b)>, I2
{
    public (int c, int d) GetValue()
    {
        return (1, 2);
    }
}

Så här åtgärdar du det här felet

Om du byter namn på tuppelns elementnamn så att de matchar gränssnittsdeklarationen korrigeras det här felet:

interface I<T>
{
    T GetValue();
}

interface I2 : I<(int c, int d)>
{
}

class C : I<(int c, int d)>, I2
{
    public (int c, int d) GetValue()
    {
        return (1, 2);
    }
}