首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC 5指定传入请求谓词

问MVC 5指定传入请求谓词
EN

Stack Overflow用户
提问于 2013-12-23 21:20:52
回答 1查看 973关注 0票数 1

在MVC 5中,没有GET和POST属性。有路线属性。看起来这些将适用于任何请求。是否有一种方法可以指定我只允许使用属性路由的gets到某个方法?我尝试使用HttpGet,但是我得到了以下错误:'System.Web.Mvc.HttpPostAttribute‘不包含接受1个参数的构造函数

我将尝试在路由属性上标记HttpGet并测试它(应该如下所示):

代码语言:javascript
复制
[HttpGet]
[Route("GetUsers")]
public ActionResult GetUsers()
{
    //return view with users
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-23 21:30:37

HTTP路由不关心请求的动词,因此为了限制特定动作在ASP.NET中使用特定的HTTP谓词和属性路由,您仍然需要使用现有的HTTP谓词属性(例如[System.Web.Mvc.HttpGetAttribute]、[System.Web.Mvc.HttpPostAttribute]和[System.Web.Mvc.AcceptVerbsAttribute])。

就像在你的例子中一样:

代码语言:javascript
复制
[HttpGet]
[Route("GetUsers")]
public ActionResult GetUsers()
{
    //return view with users
}

或者使用C#多属性语法:

代码语言:javascript
复制
[Route("GetUsers"), HttpGet]
public ActionResult GetUsers()
{
    //return view with users
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20751346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档