Ask Learn
Preview
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Indicates that the specified public static Boolean read-only property guards access to the specified feature.
public ref class FeatureGuardAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=true, Inherited=false)]
public sealed class FeatureGuardAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=true, Inherited=false)>]
type FeatureGuardAttribute = class
inherit Attribute
Public NotInheritable Class FeatureGuardAttribute
Inherits Attribute
if (Feature.IsSupported)
Feature.Implementation();
public class Feature
{
[FeatureGuard(typeof(RequiresDynamicCodeAttribute))]
internal static bool IsSupported => RuntimeFeature.IsDynamicCodeSupported;
[RequiresDynamicCode("Feature requires dynamic code support.")]
internal static Implementation() => ...; // Uses dynamic code
}
When the app is built with <PublishAot>true</PublishAot>
, the call to
Feature.Implementation()
doesn't produce analyzer warning
IL3050
and Feature.Implementation
code is removed when publishing.
Analyzers can use this attribute to prevent warnings on calls to code that's annotated as requiring that feature, when the callsite is guarded by a call to the property.
Feature |
Initializes a new instance of the FeatureGuardAttribute class with the specified feature type. |
Feature |
The type that represents the feature guarded by the property. |
Type |
When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute) |
Equals(Object) |
Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute) |
Get |
Returns the hash code for this instance. (Inherited from Attribute) |
Get |
Gets the Type of the current instance. (Inherited from Object) |
Is |
When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Inherited from Attribute) |
Match(Object) |
When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute) |
Memberwise |
Creates a shallow copy of the current Object. (Inherited from Object) |
To |
Returns a string that represents the current object. (Inherited from Object) |
Product | Versions |
---|---|
.NET | 9, 10 |
.NET feedback
.NET is an open source project. Select a link to provide feedback:
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign in