Редактиране

Споделяне чрез


CA2257: Members defined on an interface with the 'DynamicInterfaceCastableImplementationAttribute' should be 'static'

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 8 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 run time. To avoid run-time errors, mark new interface members static.

How to fix violations

Mark the interface member static.

When to suppress errors

Do not suppress a warning from this rule.

See also