我试图创建一个带有一个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” –
工作感谢:) –
如果你不介意,我会发布这个答案 –