我在同一个解决方案中有2个项目。
--PublicSite
----Apis
------PrivateApi
--ModelingSite
----Apis
------PrivateApi
我收到此错误:
发现多个类型与名为' Courts'的控制器相匹配。 如果为此请求提供服务的路由,则会发生这种情况 (' api / v1 / {controller} / {id}')发现了多个控制器 同名但不同的命名空间,不受支持。
法院要求'找到了以下匹配的控制器: PublicSite.Apis.Controllers.CourtsController ModelingSite.Apis.Controllers.ErrorHandling.CourtsController
这个问题来自PublicSite.Apis.PrivateApi中对ModelingSite.Apis.PrivateApi的引用,我必须为数据模型保留这些内容,因为我正在使用Web请求从ModelingSite api获取数据。
如何使网页api不包含"错误"控制器的映射?
这是我目前的WebApiConfig.cs
namespace PublicSite.Apis
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/v1/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
// default Json response
config.Formatters.Remove(config.Formatters.XmlFormatter);
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
}
}
}