Errore del compilatore CS1061
'type' non contiene una definizione per 'name' e non è stato possibile trovare alcun metodo di estensione accessibile 'name' che accetta un primo argomento di tipo 'type' (manca una direttiva di utilizzo o un riferimento all'assembly?).
Questo errore si verifica quando si tenta di chiamare un metodo o di accedere a un membro di classe che non esiste.
Esempio
Nell'esempio seguente viene generato l'errore CS1061 poiché Person
non ha un metodo DisplayName
. Ha invece un metodo denominato WriteName
. Forse è proprio quello che l'autore del codice sorgente ha voluto scrivere.
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
}
}
Per correggere l'errore
- Assicurarsi di aver digitato correttamente il nome del membro.
- Se si ha accesso per modificare questa classe, è possibile aggiungere il membro mancante e implementarlo.
- Se non si ha accesso per modificare questa classe, è possibile aggiungere un metodo di estensione.
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per