当我们想要在控制器中使用公共方法但又不想将其视为操作方法时,可以使用 NonAction 属性。操作方法是控制器中的公共方法,可以使用 URL 调用。因此,默认情况下,如果控制器中有任何公共方法,则可以使用 URL 请求来调用它。要限制对控制器中公共方法的访问,可以使用 NonAction 属性。
现在让我们考虑 HomeController 有两个公共方法 MyMethod1 和 MyMethod2.
using System.Web.Mvc; namespace DemoMvcApplication.Controllers{ public class HomeController : Controller{ public string MyMethod1(){ return "<h1>My Method 1 Invoked</h1>"; } public string MyMethod2(){ return "<h1>My Method 2 Invoked</h1>"; } } }
让我们使用以下 URL 调用 HomeController 中的这两个方法。
http://localhost:59146/Home/MyMethod1
http://localhost:59146/Home/MyMethod2
假设 MyMethod2 用于某些内部目的,我们不希望调用它 使用 URL 请求。为了实现这一点,我们必须用 NonAction 来装饰它 属性。
using System.Web.Mvc; namespace DemoMvcApplication.Controllers{ public class HomeController : Controller{ public string MyMethod1(){ return "<h1>My Method 1 Invoked</h1>"; } [NonAction] public string MyMethod2(){ return "<h1>My Method 2 Invoked</h1>"; } } }
下面是使 MyMethod2 非操作的输出。
以上是NonActionAttribute 在 ASP .Net MVC C# 中的意义是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!