OWIN启动错误

时间:2015-03-20 13:00:46

标签: c# asp.net-web-api owin

如果我使用自托管的网络API(OWIN)启动我的应用程序,则会收到以下错误消息:

  

{“尝试加载应用时出现以下错误。\ r \ n -       对于app启动参数值'.... PlugIn.WebService.Startup,.... PlugIn.WebService,Version = 1.0.0.0,Culture = neutral,       PublicKeyToken = null',程序集'.... PlugIn.WebService,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'找不到。“:”“}}

Owin是在动态加载的assmbly中实现的。

以下行中出现错误:

webApiDisposable = WebApp.Start<Startup>(url: baseAddress);

基本网址为:http://localhost:42015/

创业公司看起来像:

public class Startup
{
    /// <summary>
    /// Configurate the new http client
    /// </summary>
    /// <param name="appBuilder">OWIN App builder</param>
    public void Configuration(IAppBuilder appBuilder)
    {
        string routeTempl = "api/" + EndpointManager.API_VERSION + 
                            "/{controller}/{action}/{id}";

        // Configure Web API for self-host. 
        HttpConfiguration config = new HttpConfiguration();
        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: routeTempl,
            defaults: new { id = RouteParameter.Optional }
        );

        // Attribute routing
        config.MapHttpAttributeRoutes();

        // Set all filter, like for authentication and autoriuation
        config.Filters.Add(new IntegratedAuthorization());

        // Setup Json-return
        config.Formatters.Clear();
        config.Formatters.Add(new JsonMediaTypeFormatter());
        config.Formatters.JsonFormatter.SerializerSettings =
        new JsonSerializerSettings
        {
            ContractResolver = new CamelCasePropertyNamesContractResolver()
        };

        appBuilder.UseWebApi(config);
    }
}

奇怪的是,在另一个项目中它运作得很好。我也试过Owin.Start-Attribute

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,启动程序时找不到Startup类。这不是一个仅与OWIN相关的问题,但可能也是出于同样的原因。

由于某些原因,Web服务的程序集名称已更改,不幸的是,它与同一项目引用的另一个程序集相同。

当然,他们发生冲突。 解决方案是重命名程序集。

我知道帮助BendEg已经很晚了,但也许这对其他人有用。