OWIN HttpListener未find
当我尝试开始时:
WebApp.Start<SrvcHst>(new StartOptions { Port = 9956, ServerFactory = "Microsoft.Owin.Host.HttpListener" });
我得到以下exception。 什么可能是根本原因?
System.MissingMemberException was caught HResult=-2146233070 Message=The server factory could not be located for the given input: Microsoft.Owin.Host.HttpListener Source=Microsoft.Owin.Hosting StackTrace: at Microsoft.Owin.Hosting.Engine.HostingEngine.ResolveServerFactory(StartContext context) at Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext context) at Microsoft.Owin.Hosting.Starter.DirectHostingStarter.Start(StartOptions options) at Microsoft.Owin.Hosting.Starter.HostingStarter.Start(StartOptions options) at Microsoft.Owin.Hosting.WebApp.StartImplementation(IServiceProvider services, StartOptions options) at Microsoft.Owin.Hosting.WebApp.Start(StartOptions options) at Microsoft.Owin.Hosting.WebApp.Start[TStartup](StartOptions options)
您必须在您的项目引用中包含Microsoft.Owin.Host.HttpListener.dll
。
你可以通过NuGet添加它。
但是,如果代码执行:
WebApp.Start<SrvcHst> (...);
包含在一个类库中 ,确保使用该库的可执行文件还包含对Microsoft.Owin.Host.HttpListener.dll
的引用,否则它将不会与您的程序一起部署,因为没有明确的引用类库。
看看你的bin/Debug
文件夹,并确保DLL在那里。
确保你已经安装了下面的包
Microsoft.Owin.Host.HttpListener
使用Install-package Microsoft.Owin.Host.HttpListener
有时NuGet引用被添加到一个不完整的状态。 如果您安装了软件包,但是不包含引用,请尝试通过重新安装它们;
Update-Package -reinstall
在包pipe理器控制台中。
除了皮埃尔和达米斯的答案。 如果您使用的是Mac OS ,请运行以下命令来安装HttpListener :
dnu install Microsoft.Owin.Host.HttpListener