繁体   English   中英

在ASP.NET Web Api中以编程方式创建GET路由

[英]Programmatically create GET route in ASP.NET Web Api

我正在尝试以编程方式在ASP.NET Web Api中创建一个路由

config.Routes.MapHttpRoute(
   name: "test",
   routeTemplate: "api/foo",
   defaults: new
   {
       controller = "Foo",
       action = "Test"
   },
   constraints: new
   {
         httpMethod = new HttpMethodConstraint(HttpMethod.Get)
   });

但是,如果尝试使用GET调用该方法,则会收到以下响应。

{
Message: "The requested resource does not support http method 'GET'."
}

如果我将约束条件切换为POST并通过POST调用,那么所有方法都可以正常工作(并且操作将显示在帮助页面上)。

有什么想法我做错了吗?

为什么不只使用约定和http动词。

例如:定义名为Get,Post,Put等的动作,然后用url的根部分打入它们,并使用http动词告诉WEB Api响应哪个动作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM