How do I use attributes for metadata

C#, Attributes, Metadata, Example
Learn how to use attributes for metadata in C# along with a practical example.

Attributes in C# provide a powerful way to add metadata to your program elements, such as classes, methods, properties, and more. This additional information can be accessed at runtime through reflection.

Here is a simple example of creating and using a custom attribute:

// Define a custom attribute [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] public class MyCustomAttribute : Attribute { public string Description { get; } public MyCustomAttribute(string description) { Description = description; } } // Use the custom attribute [MyCustomAttribute("This is a sample class with a custom attribute.")] public class SampleClass { [MyCustomAttribute("This is a sample method.")] public void SampleMethod() { // Method implementation } } // Accessing the attribute data at runtime var type = typeof(SampleClass); var attributes = type.GetCustomAttributes(typeof(MyCustomAttribute), false); foreach (MyCustomAttribute attribute in attributes) { Console.WriteLine(attribute.Description); }

C# Attributes Metadata Example