加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 使用哪个:“AcceptGet,AcceptPost”(MvcContrib

发布时间:2020-12-16 06:51:40 所属栏目:asp.Net 来源:网络整理
导读:在ASP.NET MVC中,控制器方法可以被装饰为接受特定的HTTP方法(Get,Post,Get等).在MvcContrib和ASP.NET MVC之间有3个类:“AcceptGet,AcceptPost”和AcceptVerbs.全部三个:“AcceptGet,AcceptPost”和AcceptVerbs做同样的事情.它们指定允许访问操作/方法的htt
在ASP.NET MVC中,控制器方法可以被装饰为接受特定的HTTP方法(Get,Post,Get等).在MvcContrib和ASP.NET MVC之间有3个类:“AcceptGet,AcceptPost”和AcceptVerbs.全部三个:“AcceptGet,AcceptPost”和AcceptVerbs做同样的事情.它们指定允许访问操作/方法的http方法.

AcceptGet和AcceptPost在MvcContrib中.虽然AcceptVerbs是Mvc框架的原生.哪个更好用?

AcceptGet / AcceptPost(MvcContrib)

/// <returns></returns>
[AcceptGet]
public ActionResult Profile(string id)

AcceptVerbs(ASP.NET Mvc)

/// <returns></returns>
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult EditRequest(string id)

可以在here找到MvcContrib项目的AcceptPost的文档.

它似乎创建了AcceptGet和AcceptPost,以填补ASP.NET Mvc框架早期版本之一的空白. AcceptGet和AcceptPost类提供了强类型的HttpMethod属性.

使用AcceptVerbs发布的ASP.NET MVC采用枚举:

[Flags]
public enum HttpVerbs
{
    Delete = 8,Get = 1,Head = 0x10,Post = 2,Put = 4
}

我的问题是哪一个是更好的实现,AcceptGet / AcceptPost或AcceptVerbs(使用HttpVerbs枚举类型)?

解决方法

我不认为这两种实现之间存在很大差异,但考虑到了这一点

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult EditRequest(string id)

现在是框架的一部分,我总是使用它.两者都是强类型的,因此没有真正的区别,并且HttpVerbs枚举包括不在MVC贡献版本中的Delete,Head和Put.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读