8

我已经设法使用HttpListener host让 Katana/OWIN 在 Mono 上运行。

我现在正在尝试使用Microsoft.Owin.Host.SystemWebMono 和 XSP4。我正在使用在这个 repo中找到的代码。它有一个Startup

using Owin;

namespace KatanaSystemWebTest
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.UseDiagnosticsPage();
        }
    }
}

web.config中,我们将Configuration()方法定义为启动应用程序的方法:

<appSettings>
    <add key="owin:AppStartup" value="KatanaSystemWebTest.Startup.Configuration, KatanaSystemWebTest" />
    <add key="owin:AutomaticAppStartup" value="true" />
    <add key="webpages:Enabled" value="false" />
</appSettings>

这在 Visual Studio 中调试时效果很好,但在 Mono 上却不行。我猜这是某种不会被触发的程序集加载钩子。有什么建议么?

这是一个运行代码的应用程序:http: //peaceful-forest-6785.herokuapp.com/

完整的源代码

4

1 回答 1

0

我通过程序集属性告诉 XSP 哪个是 Startup 类和方法来使它工作:

using Owin;
using Microsoft.Owin; // <--- this is new

// this is new:
[assembly: OwinStartup (typeof (KatanaSystemWebTest.Startup), "Configuration")]

namespace KatanaSystemWebTest
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.UseDiagnosticsPage();
        }
    }
}

我还在 repo 中创建了一个带有此修复的拉取请求。

于 2016-05-13T13:39:54.880 回答