当我们想要在控制器中使用公共方法但又不想将其视为操作方法时,可以使用 nonaction 属性。操作方法是控制器中的公共方法,可以使用 url 调用。因此,默认情况下,如果控制器中有任何公共方法,则可以使用 url 请求来调用它。要限制对控制器中公共方法的访问,可以使用 nonaction 属性。
现在让我们考虑 HomeController 有两个公共方法 MyMethod1 和MyMethod2.
控制器
示例
using System.Web.Mvc;namespace DemoMvcApplication.Controllers{ public class HomeController : Controller{ public string MyMethod1(){ return "My Method 1 Invoked
"; } public string MyMethod2(){ return "My Method 2 Invoked
"; } }}
让我们使用以下 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 "My Method 1 Invoked
"; } [NonAction] public string MyMethod2(){ return "My Method 2 Invoked
"; } }}
下面是使 MyMethod2 非操作的输出。
输出

以上就是NonActionAttribute 在 ASP .Net MVC C# 中的意义是什么?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1435017.html
微信扫一扫
支付宝扫一扫