我一直在研究各种OWIN教程,并且一直遇到相同的问题。当我使用F5在Visual Studio(2013)中启动应用程序时,它们运行良好,但是当我通过命令行导航到Owinhost.exe并启动它时,每次都会遇到相同的错误:
错误:System.EntryPointNotFoundException
尝试加载应用程序时发生以下错误。
找不到包含OwinStartupAttribute的程序集。
找不到包含Startup或[AssemblyName] .Startup类的程序集。
在网上的各种建议中,我有:
1)确保输出目录只是“ / bin”而不是“ / bin / debug”。
2)在我的启动类中定义了程序集:
[assembly: OwinStartup(typeof(StartUpDemo.Startup))]
Run Code Online (Sandbox Code Playgroud)
3)设置我的web.config
<appSettings>
<add key="owin:AppStartup" value="StartUpDemo.Startup"/>
</appSettings>
Run Code Online (Sandbox Code Playgroud)
4)我还尝试使用值为“ false”的appSetting owin:AutomaticAppStartup禁用OWIN启动发现,但无济于事。
似乎OwinHost.exe甚至没有找到我的应用程序.dll,但是正如我之前提到的,当我从IDE中启动它时,它在VS2013中运行良好。我已经在“ Web”选项卡中更改了项目设置以使用OwinHost,但是否则项目设置是正常的。VS2013是否具有我需要传递到命令行的信息才能使其正常工作?我的配置中缺少什么吗?
好吧,我不知道这个问题是否已经得到解答,但无论如何,我在尝试运行 Owinhost 时遇到了同样的问题。
问题是我试图在 ..\tools\ 路径中运行 Owinhost。实际上,必须做的是在项目路径(例如 Project.Web)中,并在此路径运行 Owinhost 调用:“..\packages\OwinHost.\tools\OwinHost.exe”
结论:
错误的:
C:\{your_root_path}\{your_solution}\packages\OwinHost.<version>\tools> OwinHost.exe
Run Code Online (Sandbox Code Playgroud)
正确的:
C:\{your_root_path}\{your_solution}\{your_project}> ..\packages\OwinHost.<version>\tools\OwinHost.exe
希望我有所帮助。问候。
| 归档时间: |
|
| 查看次数: |
1889 次 |
| 最近记录: |