Nóta
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað aðskrá þig inn eða breyta skráasöfnum.
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað að breyta skráasöfnum.
| Property | Value |
|---|---|
| Rule ID | CA2257 |
| Title | Members defined on an interface with the 'DynamicInterfaceCastableImplementationAttribute' should be 'static' |
| Category | Usage |
| Fix is breaking or non-breaking | Non-breaking |
| Enabled by default in .NET 10 | As warning |
Cause
An interface member isn't explicitly implemented or marked static.
Rule description
Since a type that implements IDynamicInterfaceCastable may not implement a dynamic interface in metadata, calls to an instance interface member that is not an explicit implementation defined on this type are likely to fail at runtime. To avoid runtime errors, mark new interface members static.
How to fix violations
Mark the interface member static.
Example
[DynamicInterfaceCastableImplementation]
interface IExample
{
// This method violates the rule.
void BadMethod();
// This method satisfies the rule.
static void GoodMethod()
{
// ...
}
}
When to suppress errors
Do not suppress a warning from this rule.