光脚丫学ASP.NET MVC(0008):非操作方法

光脚丫思考  QQ:524130780
邮箱: [email protected]
博客: http://blog.csdn.net/GJYSK

视频演示: http://u.115.com/file/e6r505ey

控制器中的方法并不一定都是操作方法。
要使控制器中的方法称为操作方法,则必须使其为公共方法,并且没有为其添加NonActionAttribute特性。
私有方法不是操作方法,静态方法也不是操作方法。
如下面的两个方法,均不是控制器的操作方法。

private ActionResult About()
{
    return View();
}

public static string StaticMethod()
{
    return "Welcome you to the ASP.NET MVC!";
}

如果你试图去访问这些方法的时候,通常会引发如下的错误信息:
光脚丫学ASP.NET MVC(0008):非操作方法_第1张图片
也并非所有的公共方法都是操作方法,
如果为公共方法添加了NonActionAttribute特性,则这个方法也不是操作方法。
通过添加NonActionAttribute特性,可以使得控制器中的方法既是公开的,却又不是一个操作方法。
比如下面的方法就不是一个操作方法:

[NonAction]
public ActionResult HelloWorld()
{
    this.ViewData["Message"] = "Hello World!";
    return View();
}

只要将上面方法的NonActionAttribute特性去掉,它将立即成为一个操作方法。
当我们试图访问HelloWorld方法的时候,仍然会引发前面的那个无法找到资源的服务错误。
详细内容请参看演示视频。

你可能感兴趣的:(mvc,qq,String,asp.net)