2009-12-20 7 views
53

사용자 지정 어셈블리 특성을 정의 할 수 있는지 알고 싶습니다. 기존의 속성은 다음과 같은 방법으로 정의됩니다사용자 지정 어셈블리 특성

[assembly: MyCustomAssemblyAttribute("Hello World! This is a custom attribute.")] 

답변

77

예를 수행 할 수 있습니다

[assembly: AssemblyTitle("MyApplication")] 
[assembly: AssemblyDescription("This application is a sample application.")] 
[assembly: AssemblyCopyright("Copyright © MyCompany 2009")] 

내가 다음 작업을 수행 할 수있는 방법이 있나요. 우리는 이런 종류의 일을합니다.

[AttributeUsage(AttributeTargets.Assembly)] 
public class MyCustomAttribute : Attribute { 
    string someText; 
    public MyCustomAttribute() : this(string.Empty) {} 
    public MyCustomAttribute(string txt) { someText = txt; } 
    ... 
} 

이런 종류의 linq stmt를 읽으려면.

var attributes = assembly 
    .GetCustomAttributes(typeof(MyCustomAttribute), false) 
    .Cast<MyCustomAttribute>(); 
8

예, AttributeTargets.Assembly 사용

[AttributeUsage(AttributeTargets.Assembly)] 
public class AssemblyAttribute : Attribute { ... } 
관련 문제