小编4rc*_*hie的帖子

如何检查方法是否具有属性

我有一个示例课程

public class MyClass{

    ActionResult Method1(){
        ....
    } 

    [Authorize]
    ActionResult Method2(){
       ....
    }

    [Authorize]    
    ActionResult Method3(int value){
       ....
    }

}
Run Code Online (Sandbox Code Playgroud)

现在我想要的是编写一个返回true/false的函数,可以像这样执行

var controller = new MyClass();

Assert.IsFalse(MethodHasAuthorizeAttribute(controller.Method1));
Assert.IsTrue(MethodHasAuthorizeAttribute(controller.Method2));
Assert.IsTrue(MethodHasAuthorizeAttribute(controller.Method3));
Run Code Online (Sandbox Code Playgroud)

我到了那个地步

public bool MethodHasAuthorizeAttribute(Func<int, ActionResult> function)
{
    return function.Method.GetCustomAttributes(typeof(AuthorizeAttribute), false).Length > 0;
}
Run Code Online (Sandbox Code Playgroud)

适用于Method3.现在我怎么能以一种将字符串和类作为参数的方式来做那个泛型呢?

c# reflection tdd attributes assert

24
推荐指数
2
解决办法
1万
查看次数

如何将内容插入Ajax.ActionLink

在Asp.net mvc3 razor我有:

Ajax.ActionLink("Hello world", "Hello", "Say", new RouteValueDictionary(new { word = "Hello" }),new AjaxOptions { HttpMethod = "GET", InsertionMode = InsertionMode.Replace, UpdateTargetId = "dynamic-container" })
Run Code Online (Sandbox Code Playgroud)

它产生

<a href="...." ...>Hello world</a>
Run Code Online (Sandbox Code Playgroud)

我想得到的是

<a href="..." ...><my><html><content/></html></my></a>
Run Code Online (Sandbox Code Playgroud)

如何传递""以便插入而不是标准文本?

asp.net ajax razor asp.net-mvc-3

3
推荐指数
1
解决办法
6160
查看次数

标签 统计

ajax ×1

asp.net ×1

asp.net-mvc-3 ×1

assert ×1

attributes ×1

c# ×1

razor ×1

reflection ×1

tdd ×1