我需要創建僅適用於非靜態類成員的自定義屬性。 如何在項目編譯或使用代碼分析工具時驗證此約束?將自定義屬性分配給非靜態類成員的驗證
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. C#靜態類 - 靜態類不能有非靜態成員
- 4. 如何定義非靜態類的靜態成員數組的大小?
- 5. 想從非靜態類訪問靜態成員的非靜態子類的Java
- 6. 將靜態變量分配給非靜態變量
- 7. 將自定義標識符分配給@id屬性
- 8. 如何將自定義屬性分配給jQuery對象?
- 9. 將自定義屬性指定給強定義的MVC類
- 10. 在JavaScript中定義靜態類屬性
- 11. 在靜態中使用非靜態的自定義類void main
- 12. 澄清指向非靜態類成員
- 13. C++(非內置/類)靜態成員
- 14. 我們可以將TextContext.TestDeploymentDir值分配給靜態類數據成員嗎?
- 15. 如何將數據綁定到非靜態類的靜態屬性?
- 16. 無法從MVC2中的自定義驗證屬性設置成員名稱
- 17. 流量 - 屬性,給定一個帶有靜態屬性的類
- 18. 如何驗證自定義屬性?
- 19. 自定義驗證屬性ASP.NET MVC
- 20. 多屬性自定義驗證器
- 21. MVC3自定義驗證屬性情況
- 22. 在PHP自定義類初始化靜態成員
- 23. Boost.Bind非靜態成員
- 24. 靜態成員索引屬性
- 25. 「靜態」類成員
- 26. 靜態成員變量分配時間
- 27. 使用AttributeTargets.Class自定義驗證屬性的客戶端驗證
- 28. 將ViewController的視圖分配給自定義View類不會顯示自定義View屬性
- 29. C++中的非成員靜態模板方法定義?
- 30. 使用正在定義的類的靜態類成員
確實,我們不能使用AttrubuteUsageAttribute達到此目的。 – klashar 2009-08-10 10:19:33