Impossibile convertire il valore del tipo '<nometipo1>' in '<nometipo2>'

Aggiornamento: novembre 2007

Messaggio di errore

Impossibile convertire il valore del tipo '<nometipo1>' in '<nometipo2>'. La mancata corrispondenza dei tipi può essere causata dall'unione di un riferimento di file a '<percorsofile1>' nel progetto '<nomeprogetto1>' con un riferimento di file a '<percorsofile2>' nel progetto '<nomeprogetto2>'. Se gli assembly sono identici, provare a sostituire i riferimenti in modo che entrambi provengano dalla stessa posizione.
Value of type '<typename1>' cannot be converted to '<typename2>'. Type mismatch could be due to mixing a file reference to '<filepath1>' in project '<projectname1>' with a file reference to '<filepath2>' in project '<projectname2>'. If both assemblies are identical, try replacing these references so both references are from the same location.

In una situazione in cui in un progetto viene creato più di un riferimento di file a un assembly, il compilatore non sarà in grado di garantire che un tipo possa essere convertito in un altro.

Ogni riferimento di file specifica un percorso e un nome di file per il file di output di un progetto (in genere un file DLL). Il compilatore non sarà in grado di garantire che i file di output provengono dalla stessa origine o che rappresentino la stessa versione dello stesso assembly. Pertanto non sarà possibile garantire che i tipi nei differenti riferimenti siano uguali né che un tipo possa essere convertito in un altro.

È possibile utilizzare un singolo riferimento di file se è noto che gli assembly a cui viene fatto riferimento hanno la stessa identità dell'assembly. L'identità dell'assembly include il nome, la versione, la chiave pubblica, se esiste, e le impostazioni cultura dell'assembly. Queste informazioni identificano l'assembly in modo univoco.

ID errore: BC30961

Per correggere l'errore

  • Se gli assembly a cui viene fatto riferimento hanno la stessa identità dell'assembly, rimuovere o sostituire uno dei riferimenti di file in modo che esista un unico riferimento di file.

  • In caso contrario, modificare il codice in modo che non si tenti di convertire un tipo di uno in un tipo dell'altro.

Vedere anche

Attività

Procedura: aggiungere o rimuovere riferimenti in Visual Studio (Visual Basic)

Concetti

Riferimenti dei progetti

Altre risorse

Conversioni di tipi in Visual Basic

Riferimenti a spazi dei nomi e componenti

Gestione dei riferimenti