我需要創建僅適用於非靜態類成員的自定義屬性。 如何在項目編譯或使用代碼分析工具時驗證此約束?將自定義屬性分配給非靜態類成員的驗證
1
A
回答
2
0
你總是可以編寫使用反射來驗證這一點......誠然有些生成後事件,它可能不是最優雅的解決方案....
要這樣設置,你會進入項目屬性,然後是「生成事件」選項卡。然後你會進入基於反射的工具來執行這個驗證
+0
我有這種能力可以將自定義規則添加到代碼分析工具中以自動執行它。 – klashar 2009-08-10 10:21:02
0
這可能不是你要找的東西,但是可以用PostSharp來做出這樣的屬性,你可能會有東西像這樣:
[Serializable]
public sealed class StaticAttribute : OnMethodBoundaryAspect
{
public override bool CompileTimeValidate(System.Reflection.MethodBase method)
{
return method.IsStatic;
}
的OnMethodBoundaryAspect基本上wrapps您的方法的try/catch塊內部,並且CompileTimeValidate方法確定屬性是否是在運行時調用。
相關問題
- 1. 非靜態類的靜態成員?
- 2. 如何將類方法分配給默認屬性(即,來自靜態範圍的參考非靜態方法)
- 3. ES6類,成員屬性定義爲靜態/共享
- 4. 將值分配給變量私有靜態類屬性,該屬性是類內定義的數組
- 5. 靜態類/成員分配在哪裏?
- 6. 組非靜態類屬性
- 7. C#靜態類 - 靜態類不能有非靜態成員
- 8. 如何定義非靜態類的靜態成員數組的大小?
- 9. 想從非靜態類訪問靜態成員的非靜態子類的Java
- 10. ActiveRecord驗證不能使用自定義屬性分配方法
- 11. PHP:將對象分配給靜態屬性,它是非法的嗎?
- 12. 將靜態變量分配給非靜態變量
- 13. Singleton類中的非靜態成員
- 14. 將靜態方法輸出分配給靜態成員變量在php
- 15. 非靜態成員初始化來自另一個非靜態
- 16. 將變量分配給ASP.net動態數據中的自定義屬性
- 17. 將自定義標識符分配給@id屬性
- 18. 如何將自定義屬性分配給jQuery對象?
- 19. 將自定義屬性指定給強定義的MVC類
- 20. 在JavaScript中定義靜態類屬性
- 21. 在靜態中使用非靜態的自定義類void main
- 22. C++(非內置/類)靜態成員
- 23. 澄清指向非靜態類成員
- 24. 我們可以將TextContext.TestDeploymentDir值分配給靜態類數據成員嗎?
- 25. 如何將數據綁定到非靜態類的靜態屬性?
- 26. 無法從MVC2中的自定義驗證屬性設置成員名稱
- 27. 流量 - 屬性,給定一個帶有靜態屬性的類
- 28. 如何驗證自定義屬性?
- 29. 自定義驗證屬性ASP.NET MVC
- 30. 多屬性自定義驗證器
確實,我們不能使用AttrubuteUsageAttribute達到此目的。 – klashar 2009-08-10 10:19:33