第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Web API控制器中的多個(gè)HttpPost方法

Web API控制器中的多個(gè)HttpPost方法

Web API控制器中的多個(gè)HttpPost方法我開始使用MVC4 Web API項(xiàng)目,我有多種HttpPost方法的控制器??刂破魅缦滤荆赫{(diào)節(jié)器public class VTRoutingController : ApiController{     [HttpPost]     public MyResult Route(MyRequestTemplate routingRequestTemplate)     {         return null;     }     [HttpPost]     public MyResult TSPRoute(MyRequestTemplate routingRequestTemplate)     {         return null;     }}這里MyRequestTemplate表示負(fù)責(zé)處理通過請(qǐng)求的Json的模板類。錯(cuò)誤:當(dāng)我讓使用招為請(qǐng)求http://localhost:52370/api/VTRouting/TSPRoute或http://localhost:52370/api/VTRouting/Route 我得到一個(gè)錯(cuò)誤:找到了與請(qǐng)求匹配的多個(gè)操作如果我刪除上述方法之一,它工作正常。Global.asax中我已經(jīng)嘗試修改默認(rèn)路由表global.asax,但我仍然收到錯(cuò)誤,我認(rèn)為我在global.asax中定義路由時(shí)遇到問題。這是我在global.asax中所做的。public static void RegisterRoutes(RouteCollection routes){     routes.MapHttpRoute(         name: "MyTSPRoute",         routeTemplate: "api/VTRouting/TSPRoute",         defaults: new { }     );     routes.MapHttpRoute(         name: "MyRoute",         routeTemplate: "api/VTRouting/Route",         defaults: new { action="Route" }     );}我正在使用POST在Fiddler中發(fā)出請(qǐng)求,在RequestBody中為MyRequestTemplate傳遞json。
查看完整描述

3 回答

?
至尊寶的傳說

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊

對(duì)您的問題更好的解決方案是使用Route,它允許您通過注釋指定方法的路徑:

[RoutePrefix("api/VTRouting")]public class VTRoutingController : ApiController{
    [HttpPost]
    [Route("Route")]
    public MyResult Route(MyRequestTemplate routingRequestTemplate)
    {
        return null;
    }

    [HttpPost]
    [Route("TSPRoute")]
    public MyResult TSPRoute(MyRequestTemplate routingRequestTemplate)
    {
        return null;
    }}


查看完整回答
反對(duì) 回復(fù) 2019-08-26
?
眼眸繁星

TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊

使用:


routes.MapHttpRoute(

    name: "DefaultApi",

    routeTemplate: "api/{controller}/{action}/{id}",

    defaults: new { id = RouteParameter.Optional }

);

它不再是RESTful方法,但您現(xiàn)在可以通過名稱調(diào)用您的操作(而不是讓W(xué)eb API根據(jù)動(dòng)詞自動(dòng)為您確定一個(gè)),如下所示:


[POST] /api/VTRouting/TSPRoute


[POST] /api/VTRouting/Route

與流行的看法相反,這種方法沒有任何問題,也沒有濫用Web API。您仍然可以利用Web API的所有強(qiáng)大功能(委派處理程序,內(nèi)容協(xié)商,mediatype格式等) - 您只是放棄了RESTful方法。


查看完整回答
反對(duì) 回復(fù) 2019-08-26
  • 3 回答
  • 0 關(guān)注
  • 1313 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)