我試圖創建一個帶有一個String參數的自定義路由的Web API方法,但是這在應用程序啓動時出現錯誤 - 所以我甚至不需要點擊路線或應用程序中斷的方法。使用字符串參數設置路由屬性
// Pass String to TMS and Return an ID
[System.Web.Http.HttpGet]
[System.Web.Http.Route("api/job/import/{import:string}")]
public int TmsImport(string import)
{
var TmsId = 0;
if (import.Length > 0)
{
TmsId = 1;
}
return (TmsId);
}
在Global.asx以下方法應用遊:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
當我通過一個int的方法同樣的方法工作,但它似乎並不能夠識別在參數中輸入名稱'string'。我在這裏看到類似問題的答案:call to web api with string parameter - 但我無法弄清楚這個答案會發生什麼變化?如果它將在JS的調用或路由配置中?
只是刪除':從'string' {import:string}'並嘗試連接到「api/job/import/somestring」 –
工作感謝:) –
如果你不介意,我會發布這個答案 –