Errore del compilatore CS0265

Aggiornamento: novembre 2007

Messaggio di errore

Le dichiarazioni parziali di 'tipo' contengono vincoli incoerenti per il parametro di tipo 'parametro tipo'.
Partial declarations of 'type' have inconsistent constraints for type parameter 'type parameter'

Questo errore si verifica quando le dichiarazioni parziali di una classe generica definita come classe parziale sono presenti in più posizioni e i vincoli relativi al tipo generico sono incoerenti oppure differiscono in almeno due posizioni. I vincoli specificati in più posizioni devono essere identici. Questo problema può essere facilmente evitato dichiarando i vincoli in un'unica posizione e omettendoli da tutti le altre. Per ulteriori informazioni, vedere Classi e metodi parziali (Guida per programmatori C#) e Vincoli sui parametri di tipo (Guida per programmatori C#).

Il seguente codice di esempio genera l'errore CS0265.

Esempio

In questo esempio le definizioni parziali della classe sono incluse in un singolo file, ma potrebbero essere contenute in più moduli.

// CS0265.cs
public class GenericsErrors 
{
    interface IFace1 { }
    interface IFace2 { }
    partial class PartialBadBounds<T> where T : IFace1 { } // CS0265
    partial class PartialBadBounds<T> where T : IFace2 { } 
}