Compilerfout CS1061

'type' bevat geen definitie voor 'name' en er is geen toegankelijke extensiemethode 'name' die een eerste argument van het type 'type' accepteert gevonden (ontbreekt er een using directive of assembly reference?).

Deze fout treedt op wanneer u probeert een methode aan te roepen of toegang te krijgen tot een klasselid dat niet bestaat.

Example

In het volgende voorbeeld wordt CS1061 gegenereerd omdat Person geen DisplayName-methode heeft. Het heeft wel een methode die wordt aangeroepen WriteName. Misschien is dat wat de auteur van deze broncode bedoelde te schrijven.

public class Person
{
    private string _name;

    public Person(string name) => _name = name;

    // Person has one method, called WriteName.
    public void WriteName()
    {
        System.Console.WriteLine(_name);
    }
}

public class Program
{
    public static void Main()
    {
        var p = new Person("PersonName");

        // The following call fails because Person does not have
        // a method called DisplayName.
        p.DisplayName(); // CS1061
    }
}

Deze fout corrigeren

  • Zorg ervoor dat u de naam van het lid juist hebt getypt.
  • Als u toegang hebt om deze klasse te wijzigen, kunt u het ontbrekende lid toevoegen en implementeren.
  • Als u geen toegang hebt om deze klasse te wijzigen, kunt u een extensiemethode toevoegen.
  • Als het lid dat u probeert te benaderen zou moeten bestaan maar dat niet doet, ontbreekt mogelijk een vereist NuGet-pakket. Zoek NuGet.org naar pakketten die het ontbrekende lid bevatten.

Zie ook