我正在使用ASP.NET MVC 3.我對它很陌生。我想我已經開始掌握它了。但有一些我正在努力做的,我認爲是有道理的,但也許我錯了。使用ASP.NET MVC3推薦的API設計
我正在嘗試在我的數據庫中的Order對象周圍創建一個API。爲了獲得系統中所有的命令,我要揭露,看起來像下面的API:
/命令/
在我想獲得一個特定的順序的情況下,我只想附加一個ID。換句話說,該URL應該是這樣的:
/命令/ 12345
在努力做到這一點,我創建了以下控制器:
public class OrdersController : Controller
{
// GET: /Orders/
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index()
{
string result = "list of orders";
return Json(result, JsonRequestBehavior.AllowGet);
}
//
// GET: /Orders/{orderID}
public ActionResult Index(int id)
{
string result = "order:" + id;
return Json(result, JsonRequestBehavior.AllowGet);
}
}
在我AreaRegistration類,我有以下內容:
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"OrderList",
"{controller}/{action}",
new { action = "Index", controller="Orders" }
);
context.MapRoute(
"Order",
"{controller}/{action}/{id}",
new { action = "Index", controller = "Orders" }
);
}
當我試圖訪問「/命令/」,通過瀏覽器地址欄,我得到的JSON像我期望的那樣。但是,如果我試圖訪問「/ orders/12345」,我會收到404。我錯過了什麼?
謝謝
你的路由表是什麼樣的? –
我沒有做任何事情。由於該控制器位於Area內,因此我不確定在哪裏設置路由。 –