我得到这个错误,因为我的项目无法找到OWIN启动类的参考。我甚至通过Nuget安装了所有的OWIN参考包,仍然得到相同的问题。我使用的是Visual Studio 2012和MVC4。

在尝试加载应用程序时发生了以下错误。

没有找到包含OwinStartupAttribute的程序集。 没有找到包含Startup或[AssemblyName]的程序集。启动类。禁用OWIN启动发现,添加appSetting owin:在你的web.config中,AutomaticAppStartup的值为“false”。 要指定OWIN启动程序集、类或方法,请添加 appSetting owin:使用完全合格的启动类或 config中的配置方法名称。


当前回答

我有这个问题,理解这不是什么错在OP的情况下,但在我的情况下,我确实有一个启动类,它只是没有找到它默认。

我的问题是在程序集名称中有空格,因此默认名称空间与程序集名称不同,因此启动类的名称空间与程序集名称不同。

正如错误提示的那样,按照约定,它将查找[程序集名称]。开始上课…因此,请确保启动类的命名空间与程序集名称相同。帮我解决了这个问题。

其他回答

如果你不想使用OWIN启动,这是你应该添加到你的网页。配置文件:

在AppSettings下添加以下行:

    <add key="owin:AutomaticAppStartup" value="false" />

这是它在你的web.config中的样子:

  <appSettings>
    <add key="owin:AutomaticAppStartup" value="false" />
  </appSettings>

在Visual Studio 2015中,当你在MVC项目中使用Azure AD时,也会遇到这种情况。在这里,它在App_Start文件夹中创建了startup . auth .cs启动文件,但它将缺少

[assembly: OwinStartup(typeof(MyWebApp.Startup))]

加进去就可以了。这在命名空间开始之前。

首先,你必须创建你的启动文件,然后你必须在web中指定该文件的语言环境。在appSettings标签中使用这一行:

<add key=“owin: app启动”值[namesce]。“初创公司- >

它解决了我的问题。

您是否真的试图将OWIN添加到您的项目中,或者这是意想不到的事情?

如果你想要添加OWIN,添加一个Startup类是最好的方法。 如果你不需要任何Owin的参考资料: 删除/bin文件夹中的Owin.dll。 Owin.dll是试图标识Startup类的程序。

检查一下你的包裹。配置文件被签入(当排除时,在资源管理器中会显示一个红色的无条目符号)。由于一些奇怪的原因,我的被排除在外,导致了这个问题。