servicestack,httplistener,Asp.net Web Api,servicestack,Httplistener" /> servicestack,httplistener,Asp.net Web Api,servicestack,Httplistener" />

Asp.net web api System.PlatformNotSupported服务堆栈异常

Asp.net web api System.PlatformNotSupported服务堆栈异常,asp.net-web-api,servicestack,httplistener,Asp.net Web Api,servicestack,Httplistener,我正在尝试运行一个服务堆栈应用程序,当它部署在另一个机器上时,它在我的开发机器上运行良好,我得到System.PlatformNotSupported异常。 堆栈跟踪如下: 未处理的异常:System.PlatformNotSupportedException:此平台不支持操作。 在System.Net.HttpListener..ctor()上 在ServiceStack.Host.HttpListener.HttpListenerBase.Start(IEnumerable`1 urlBas

我正在尝试运行一个服务堆栈应用程序,当它部署在另一个机器上时,它在我的开发机器上运行良好,我得到System.PlatformNotSupported异常。 堆栈跟踪如下:

未处理的异常:System.PlatformNotSupportedException:此平台不支持操作。 在System.Net.HttpListener..ctor()上 在ServiceStack.Host.HttpListener.HttpListenerBase.Start(IEnumerable`1 urlBases,WaitCallback listenCallback) 位于ServiceStack.Host.HttpListener.HttpListenerBase.Start(字符串urlBase) 位于ExcaliburAppHost.Program.Main(字符串[]args)

我正在尝试构建一个具有自托管功能的Restful应用程序(另一个盒子上不支持IIS)

var listeningOn=args.Length==0?“http://*:8090/”:args[0];
var appHost=new appHost()
.Init()
.开始(正在收听)


AppHost().Start()方法中出现错误

如果您有任何非托管.dll,例如
sqlite3.dll
您可能需要将项目的平台目标设置为x86


您还可以尝试以管理员/sudo的身份运行Console应用程序,以防出现权限问题。

我还尝试将System.Web.Http.dll包含在生成本地。是否可以将Apache或NGinx或任何其他应用程序用作.Net Web Api项目的Http服务器。我工作的环境是我必须避免IISHi mythz,我在Windows恢复环境下运行我的应用程序,这是一个自定义构建的Win-PE映像,完全支持.net。但是,我在win PE内没有工作的wifi/networl连接。我的所有DLL都符合x64标准,并在本地复制。@请测试它是否真正支持。如果没有,您将无法使用构建在其上的ServiceStack SelfHost。在该环境中,对HttpListener的支持是一个问题,因此我在为HttpListener()创建实例时开始在调用中查找方法。我发现对以下不安全代码的调用正在返回系统状态代码1060
[DllImport(“httpapi.dll”,ExactSpelling=true,CallingConvention=CallingConvention.StdCall,SetLastError=true)]内部静态外部不安全uint HttpInitialize(httpapi_版本,uint标志,void*保留)1060状态代码的含义是错误\u服务\u不存在\u您知道如何在平台上安装http API驱动程序(http.sys驱动程序)吗?我在windows 7和windows 10上看到它已经安装,但在自定义windows PE(由我们创建)上它不可用,因此如果我们知道驱动程序,我们可能可以将其插入自定义PE映像中并进行尝试。Thanks@rocky我不认为这是可能的,因为它内置在Windows中,要获得一个新的http.sys内核模式驱动程序,您需要升级操作系统。