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.
| Proprietà | valore |
|---|---|
| ID regola | CA2256 |
| Title | Tutti i membri dichiarati nell'interfaccia padre devono avere un'implementazione in un'interfaccia con l'attributo DynamicInterfaceCastableImplementation |
| Categoria | Utilizzo |
| La correzione causa un'interruzione o meno | Non rompente |
| Abilitato per impostazione predefinita in .NET 10 | A titolo di avvertimento |
| Linguaggi applicabili | C# e Visual Basic |
Causa
Un'interfaccia con DynamicInterfaceCastableImplementationAttribute ha un membro non implementato.
Descrizione regola
Tipi attribuiti con DynamicInterfaceCastableImplementationAttribute fungono da implementazione dell'interfaccia per un tipo che implementa il tipo IDynamicInterfaceCastable. Di conseguenza, deve fornire un'implementazione di tutti i membri definiti nelle interfacce ereditate, perché il tipo che implementa IDynamicInterfaceCastable non li fornirà altrimenti.
Come correggere le violazioni
Implementare i membri dell'interfaccia mancanti.
Example
interface IParent
{
void ParentMethod();
}
// This interface violates the rule.
[DynamicInterfaceCastableImplementation]
interface IBadChild : IParent
{
static void ChildMethod()
{
// ...
}
}
// This interface satisfies the rule.
[DynamicInterfaceCastableImplementation]
interface IGoodChild : IParent
{
static void ChildMethod()
{
// ...
}
void IParent.ParentMethod()
{
// ...
}
}
Quando eliminare gli errori
Non sopprimere un avviso da questa regola.