Domanda

Ho creato un nuovo progetto di libreria di classe con la seguente classe di avvio:

public class Startup
{
    public void Configure(IAppBuilder app)
    {
        app.Run(ctx =>
        {
            ctx.Response.StatusCode = 200;
            ctx.Response.ContentType = "text/plain";
            return ctx.Response.WriteAsync("Hello from Owin");
        });
    }
}
.

Ho installato i seguenti pacchetti:

<packages>
  <package id="Microsoft.Owin" version="2.1.0" targetFramework="net45" />
  <package id="Microsoft.Owin.Host.HttpListener" version="2.1.0" targetFramework="net45" />
  <package id="Owin" version="1.0" targetFramework="net45" />
  <package id="OwinHost" version="2.1.0" targetFramework="net45" />
</packages>
.

Quando tento di eseguire owinhost.exe da /bin/debug ottengo il seguente errore:

Error:  System.EntryPointNotFoundException
  The following errors occurred while attempting to load the app.
 - No assembly found containing an OwinStartupAttribute.
 - No assembly found containing a Startup or [AssemblyName].Startup class.
.

Devo fare qualsiasi altra cosa per ottenere Owinhost.exe per lavorare con un progetto di biblioteca di classe (ho avuto lo stesso problema con un'applicazione console).

È stato utile?

Soluzione

Se si esegue Owinhost.exe senza parametri, il nome del metodo deve essere Configuration, non Configure.

Inoltre, eseguire owinhost.exe sotto il percorso root (a.k.a {projectdir}) e in uscita le build to / bin, non / bin / debug.Naturalmente, questi sono configurabili tramite interruttori a OwinHost.exe ma questo è ciò di cui ha bisogno se vuoi eseguirlo w / o eventuali interruttori.

More in profondità spiegazione è disponibile qui: Rilevamento della classe di avvio owin e qui: buona vecchia esperienza F5 con Owinhost.exe su Visual Studio 2013

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top