سؤال

لقد قمت بإنشاء مشروع مكتبة فئة جديدة مع فئة بدء التشغيل التالية:

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");
        });
    }
}

لقد قمت بتثبيت الحزم التالية:

<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>

عندما أحاول الركض owinhost.exe من /bin/debug أحصل على الخطأ التالية:

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.

هل أحتاج إلى القيام بأي شيء آخر لجعل OwinHost.exe يعمل مع مشروع مكتبة الفصل (واجهت نفس المشكلة مع تطبيق وحدة التحكم).

هل كانت مفيدة؟

المحلول

إذا قمت بتنفيذ OwinHost.exe بدون معلمات، فيجب أن يكون اسم الطريقة Configuration, ، لا Configure.

أيضا، تنفيذ owinhost.exe ضمن المسار الجذر (A.K.A {projectDir}) وإخراج الإصدارات إلى /bin، وليس /bin/debug.وبطبيعة الحال، هذه قابلة للتكوين من خلال التبديل إلى OwinHost.exe ولكن هذا هو ما تحتاجه إذا كنت تريد تشغيله بدون أي مفاتيح.

المزيد من الشرح المتعمق متاح هنا: الكشف عن فئة بدء التشغيل OWIN و هنا: تجربة F5 قديمة جيدة مع OwinHost.exe على Visual Studio 2013

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top