我有这种有利的情况,我有一个用于webApi的baseController,并且已经将问题跟踪到这一点。如果我有了一个输入参数类型对象,其中发现它最终会以http 500多个操作的基本控制器...BaseController输入参数对象结果发现与请求匹配的多个操作
而且这是在默认情况下使用IISExpress
public class BaseSecureApi : ApiController
{
public string Wtf(object ohMyGodThisIsSilly)
{
return null;
}
}
对VS 2012的空MVC 4.0项目
并且,控制器
public class Default1Controller : BaseSecureApi
{
// GET api/default1
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// POST api/default1
[HttpPost]
public string Post([FromBody]string value)
{
return "Postmyvalue:" + value;
}
}
以及路线
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
现在为什么路由发生故障。 IRL基类根据谁登录并且结果是否应加密,返回httpResponse。
我试图重现使用发布的代码,但我没有得到你得到的结果。如果我将Wtf方法重命名为GetWtf,我会得到相同的结果。 –
您使用的是@OlavNybø的哪个环境?刚刚检查了我的测试项目,它崩溃了。 – Archlight
我得到的结果与您发布时的结果相同,我最初只尝试过。 –