我正在开发一个开源项目(Logbus-ng),我需要以一种适用于 Windows 和 Mono 的方式实现由控制台应用程序生成的 Web服务。
目前,感谢 MSDN Magazine 的教程,我在 Windows 上成功地做到了这一点。控制台应用程序可以生成自己的 Web 服务器,并实际上向外部打开 Web 服务接口。问题是这在 Mono 中不起作用,合理的原因是 Mono 错误。
与 Mono 开发人员聊天时,他们建议我使用 Mono.XSP 程序集来启用 ASP.NET 管道进入控制台应用程序,因此我想我将根据配置使用Web 服务激活器的不同实现。
现在我的问题是:因为 Mono.XSP 在所有 Mono 发行版的 GAC 中都可用(即在 Linux 下使用 xbuild 时),但在 Windows 中不可用,除非有人将它安装到 GAC 中,而且我不想发布Mono。 XSP 与我的软件,如果他们不需要它(即如果在 Windows 下编译),也不会强迫某人安装 Mono,我可以在 GAC 中设置对 Mono.XSP 程序集的引用,该引用仅在启用 MONO 编译标志时启用? 启用此标志后,我的代码显然将引用 Mono.XSP 而不是上面链接的教程中介绍的 HttpListenLibrary,并且编译器将正确使用该引用。
先感谢您。