'<nomeelemento>' è ambiguo poiché esistono più tipi di membri con questo nome in <tipo> '<nometipo>'

Aggiornamento: novembre 2007

'<elementname>' is ambiguous because multiple kinds of members with this name exist in <type> '<typename>'

Un'espressione accede a un elemento di programmazione definito in una classe, struttura, modulo o interfaccia contenente più membri con lo stesso nome.

La causa più probabile di questo errore è la distinzione tra maiuscole e minuscole. I nomi in Visual Basic sono senza distinzione tra maiuscole e minuscole ed è pertanto possibile che vengano scritti utilizzando maiuscole e minuscole in modo diverso in posizioni differenti nel codice. Se si definisce, ad esempio, una variabile con il nome XYZ e si accede successivamente come xyz, il compilatore considera i due nomi equivalenti.

Tuttavia, altri linguaggi, quali Visual C# e Visual C++, rilevano la differenza tra maiuscole e minuscole. In un linguaggio tale, XYZ e xyz non sono considerati nomi uguali. Pertanto, una classe scritta in un linguaggio di questo tipo potrebbe definire una variabile denominata XYZ e una proprietà denominata xyz. Common Language Runtime conserva la distinzione tra maiuscole e minuscole negli assembly. Tuttavia, se un'applicazione di Visual Basic accede a un assembly con XYZ e xyz, i nomi appariranno come uguali.

ID errore: BC31429

Per correggere l'errore

  1. Se si ha il controllo sul codice sorgente del tipo di definizione, ridenominare i membri in modo che non si differenzino solo per la combinazione di maiuscole e minuscole. Questa operazione potrebbe non essere possibile se il tipo di definizione è già stato pubblicato o sta per essere utilizzato da altre applicazioni.

  2. Se non è possibile ridenominare i membri nel tipo di definizione, rimuovere l'elemento di programmazione dal codice. Non è possibile accedere a un elemento a cui in Visual Basic corrispondono più di una definizione.

Vedere anche

Attività

Risoluzione dei problemi relativi alle variabili in Visual Basic

Concetti

Nomi di elementi dichiarati

Altre risorse

Common Language Runtime