Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
- CS0012: il tipo 'type' è definito in un assembly a cui non viene fatto riferimento. È necessario aggiungere un riferimento all'assembly 'assembly'.
- CS0234: il tipo o il nome dello spazio dei nomi non esiste nello spazio dei nomi (manca un riferimento all'assembly?)
- CS0246: Impossibile trovare il tipo o il nome dello spazio dei nomi (potrebbe mancare una direttiva using o un riferimento all'assembly?)
- CS0400: Il tipo o il nome dello spazio dei nomi non è stato trovato nello spazio dei nomi globale (forse manca un riferimento all'assembly?)
- CS0735: tipo non valido specificato come argomento per TypeForwardedToAttribute l'attributo.
- CS1068: il nome del tipo non è stato trovato nello spazio dei nomi globale. Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
- CS1069: impossibile trovare il nome del tipo nello spazio dei nomi . Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
- CS1070: impossibile trovare il nome del tipo. Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
- CS1704: è già stato importato un assembly con lo stesso nome semplice. Provare a rimuovere uno dei riferimenti o firmarli per abilitare side-by-side.
- CS1714: impossibile risolvere la classe o l'interfaccia di base di questo tipo o non è valida.
- CS1760: più assembly fanno riferimento agli stessi metadati, ma solo uno è un riferimento collegato (specificato usando l'opzione /link); provare a rimuovere uno dei riferimenti.
- CS7008: il nome dell'assembly è riservato e non può essere usato come riferimento in una sessione interattiva.
- CS7068: Il riferimento al tipo indica che è definito in questo assembly, ma non è definito nel sorgente o in alcun modulo aggiunto.
- CS7069: Riferimento al tipo afferma che è definito in un altro assembly, ma non è stato trovato.
- CS7071: Il riferimento all'assembly non è valido e non può essere risolto.
- CS7079: il tipo è definito in un modulo che non è stato aggiunto. È necessario aggiungere il modulo.
- CS8090: si verifica un errore in un assembly a cui si fa riferimento.
- CS8203: Nome Assembly non valido.
- CS9286: il tipo non contiene una definizione e non è stato trovato alcun membro di estensione accessibile per il tipo di ricevitore (manca una direttiva using o un riferimento all'assembly?)
In questo articolo sono inoltre illustrati gli avvisi seguenti:
- CS1683: Il riferimento al tipo 'Type Name' afferma che è definito nell'assembly, ma non è definito nella sorgente o nei moduli inclusi.
Riferimenti mancanti
Gli errori e gli avvisi seguenti indicano che manca un riferimento all'assembly:
- CS0012: il tipo 'type' è definito in un assembly a cui non viene fatto riferimento. È necessario aggiungere un riferimento all'assembly 'assembly'.
- CS0234: il tipo o il nome del namespace non esiste nel namespace (potrebbero mancare riferimenti all'assembly?)
- CS0246: impossibile trovare il tipo o il nome dello spazio dei nomi (manca una direttiva using o un riferimento all'assembly?)
- CS9286: il tipo non contiene una definizione e non è stato trovato alcun membro di estensione accessibile per il tipo di ricevitore (manca una direttiva using o un riferimento all'assembly?)
Questi errori del compilatore indicano uno di questi problemi nel codice:
- Il progetto non fa riferimento all'assembly richiesto. Per correggere questo errore, aggiungere un riferimento all'assembly necessario.
- Hai scritto male il nome di un tipo. Controllare il nome del tipo.
- È stato usato un nome di variabile in cui ci si aspettava il nome di un System.Type, ad esempio con l'operatore
typeofo l'operatoreis. - È stato usato l'operatore di ambito globale (
::) quando il tipo non si trova nello spazio dei nomi globale. - Stai accedendo a un membro di estensione e lo spazio dei nomi non è specificato in una direttiva
using, oppure non stai facendo riferimento all'assembly che contiene l'estensione.
Quando viene visualizzato un riferimento all'assembly
Se l'assembly sembra essere referenziato nel tuo progetto ma ricevi comunque l'errore CS0012, prova questi passaggi per risolvere i problemi.
Ripristina pacchetti: eseguire
dotnet restoreper assicurarsi che tutti i riferimenti ai pacchetti siano risolti correttamente, soprattutto dopo l'installazione o la disinstallazione dei pacchetti NuGet.Cancellare la cache e il ripristino dei pacchetti NuGet:
dotnet nuget locals all --clear dotnet restoreVerificare la presenza di conflitti di versione: verificare che tutti gli assembly a cui si fa riferimento usino versioni compatibili. Cercare gli avvisi di reindirizzamento dell'associazione nell'output di compilazione.
Pulire la soluzione e ricompilare per garantire che non rimangano riferimenti non aggiornati:
dotnet clean dotnet buildVerificare l'integrità del pacchetto: se l'errore si è verificato dopo le operazioni del pacchetto, verificare che il pacchetto sia stato installato correttamente rimuovendolo e reinstallandolo:
dotnet remove package [PackageName] dotnet add package [PackageName]
Inoltro dei tipi
- CS1068: il nome del tipo non è stato trovato nello spazio dei nomi globale. Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
- CS1069: impossibile trovare il nome del tipo nello spazio dei nomi . Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
- CS1070: impossibile trovare il nome del tipo. Questo tipo è stato inoltrato a un altro assembly. Prendere in considerazione l'aggiunta di un riferimento a tale assembly.
Questi errori indicano un errore che fa riferimento a un tipo ridiretto a un assembly diverso. Per risolvere uno di questi errori, aggiungere un riferimento all'assembly indicato nel messaggio di errore.
Riferimenti duplicati
Gli errori seguenti indicano un riferimento all'assembly duplicato:
- CS1704: è già stato importato un assembly con lo stesso nome semplice. Provare a rimuovere uno dei riferimenti o firmarli per abilitare side-by-side.
- CS1760: più assembly fanno riferimento agli stessi metadati, ma solo uno è un riferimento collegato (specificato usando l'opzione /link); provare a rimuovere uno dei riferimenti.
Per correggere questi errori, è necessario rimuovere uno dei riferimenti o risolvere la duplicazione. Le cause della duplicazione includono:
- Più assembly non firmati hanno lo stesso nome.
- Il progetto fa riferimento a più versioni dello stesso assembly.
Riferimento all'assembly non valido
Gli errori seguenti indicano che un riferimento all'assembly non è valido:
- CS7008: il nome dell'assembly è riservato e non può essere usato come riferimento in una sessione interattiva.
- CS7069: Il riferimento al tipo afferma che è definito in un altro assembly, ma non è stato trovato.
- CS7071: Il riferimento all'assembly non è valido e non può essere risolto.
- CS7079: il tipo è definito in un modulo che non è stato aggiunto. È necessario aggiungere il modulo.
- CS8090: si verifica un errore in un assembly a cui si fa riferimento.
- CS8203: Nome assembly non valido.
L'avviso seguente indica anche un assembly di riferimento non valido:
- CS1683: Riferimento al tipo 'Type Name' afferma che è definito in questo assembly, ma non è definito nella sorgente o in qualsiasi modulo aggiunto
Verificare che il nome dell'assembly sia stato digitato correttamente. Il file di assembly a cui si fa riferimento potrebbe non essere valido.