2010-08-09 23 views
2
[CustomAttribute] 
public bool IsGreen() 
{ 
    return true; 
} 

如何在c#中使用DynamicMethod編寫上述代碼?c#+使用具有屬性的動態方法

UPDATE; per casperOne你不能用自定義屬性來做到這一點。

什麼關於非自定義屬性,如:

[Conditional("DEBUG")] 
public bool IsGreen() 
{ 
    return true; 
} 

注:我創建了一個新的職位,因爲我的最後一個錯過這點: 什麼IM開車是.. .how如何動態創建一個包含屬性的方法?

另外,我問到使用DynamicMethod,有沒有更好的方法?

+0

這個問題並沒有提到AT&T的語法 - 代碼'[att]'去掉了 – Hawken 2012-10-15 21:41:51

回答

0

你不行。從在對IsDefined method on the DynamicMethod class文檔註釋部分的說明:

自定義屬性不是目前支持動態方法 。

如果您想創建動態方法,那麼您將不得不動態創建程序集/模塊/類型/方法,然後將屬性附加到該方法。

+0

我很感謝你的回答,我試圖圍繞什麼可以/不可以做什麼和怎麼做。怎麼樣一個非定製屬性的方法?我更新我的帖子上面。 – schmoopy 2010-08-09 15:52:56