2011-11-10 49 views
1

我想創建一個自定義屬性,但將其用法限制爲接口的方法。在C#中可以這樣做嗎?如何限制接口方法的屬性

我想有compilator錯誤,當我嘗試這樣做:

public class SomeClass 
{ 
    [MyAttribute] 
    public void SomeMethod() { ... } 
} 

[MyAttribute] 
public interface IMyInterface { ... } 

我想成爲能夠做到只有這個:

public interface IMyInterface 
{ 
    [MyAttribute] 
    void SomeMethod(); 
} 

我可以在我的屬性限制接口或方法,但不能同時進行,但不能同時進行。

[AttributeUsage(AttributeTargets.Method)] 
+0

你能舉一個你想申請哪個限制的例子嗎? – sll

+0

有沒有代碼或例子。請填寫你的答案一點。 –

回答

1

這是不可能的。看看AttributeTargets枚舉。您可以將其限制爲一種方法,但不適用於接口的方法

1

不可以。在MSDN檢查AttributeTarget枚舉。