2
A
回答
2
您可以使用ActionDescriptor.GetCustomAttributes獲得適用於操作屬性。 ActionExecutingContext和ActionExecutedContext都暴露了一個名爲ActionDescriptor的屬性,允許您獲取ActionDescriptor類的實例。
1
您可以使用反射來查看動作是否具有HttpPostAttribute。 假設你的方法是類似的東西:
[HttpPost]
public ActionResult MyAction(MyViewModel model)
{
//my code
}
你可以用這個做了測試:
var controller = GetMyController();
var type = controller.GetType();
var methodInfo = type.GetMethod("MyAction", new Type[1] { typeof(MyViewModel) });
var attributes = methodInfo.GetCustomAttributes(typeof(HttpPostAttribute), true);
Assert.IsTrue(attributes.Any());
1
更簡單的方法,我發現如下:
var controller = GetMyController();
var type = controller.GetType();
var methodInfo = type.GetMethod("MyAction", new Type[1] { typeof(MyViewModel) });
bool isHttpGetAttribute = methodInfo.CustomAttributes.Where(x=>x.AttributeType.Name == "HttpGetAttribute").Count() > 0
我希望這幫助。
快樂編碼。
相關問題
- 1. 如何判斷一個方法是否被調用?
- 2. 有沒有辦法判斷一個活動是否開始?
- 3. 如何判斷一個方法是否有使用反射的可變參數?
- 4. 如何判斷某個方法是否在類中定義?
- 5. 是否有任何算法來判斷一個字符串是否有意義
- 6. 如何判斷「內聯」是否工作?
- 7. 我如何判斷ajax是否工作?
- 8. php get_headers一個很好的方法來判斷一個網站是否啓動?
- 9. 如何判斷GIF是否爲動畫?
- 10. 如何判斷一個JSON對象是否是一個數組?
- 11. 如何判斷一個函數是否是一個類?
- 12. 如何判斷是否有控制檯
- 13. 如何判斷加載是否有效?
- 14. 我如何判斷一個南希請求是否爲移動
- 15. Android:如何判斷一個視圖是否在iPhone中滾動
- 16. 如何判斷方法「performSegueWithIdentifier:sender:」?
- 17. 如何判斷一個haskell源代碼是否有
- 18. 如何判斷一個字符是否對html有效?
- 19. 如何判斷是否有一個environment.newline在StreamReader.Readline()
- 20. 如何判斷一個窗口是否有焦點? (Win32 API)
- 21. 如何判斷一個Android設備是否有硬鍵
- 22. 如何判斷的方法是一種通用的方法
- 23. 如何判斷傳入請求是否是web方法請求?
- 24. 有沒有辦法判斷一個類是否是一個接口?
- 25. 如何判斷一個Actionscript對象是否具有某個動態屬性?
- 26. 如何判斷一個git回購是否是一面鏡子?
- 27. 如何判斷一個類是否來自另一個類
- 28. 如何判斷一個方法是否在UpdatePanel回發中運行?
- 29. 如何通過反射來判斷一個方法是否返回'void'
- 30. 如何判斷一個LINQ擴展方法是否遭受雙重枚舉?