سؤال

أنا أستخدم موقع ASP.NET التقليدي الذي أستخدم فيه الوحدة النمطية للنظام. أريد أن أجد الطريقة التي أعرف بها أن الوحدات النمطية للتوجيه HTTP محملة أم لا؟

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

المحلول

كل ما تحتاج إلى معرفته هو اسم الوحدة النمطية كما قمت بتكوينه في ملف Web.config الخاص بك على سبيل المثال يتم تسمية ملف الألغام: "UrlroutingModule" كما ترى من هذا المقتطف هنا (مهيأ ل Stackoverflow):

    <add name="UrlRoutingModule" 
         type="System.Web.Routing.UrlRoutingModule, System.Web.Routing,
         Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

بمجرد أن يكون لديك ذلك، كل ما عليك فعله هو التحقق من خاصية وحدات التطبيقات (التي هي من نوع httpmodulecollection لاسم الوحدة النمطية وتحقق من أنه غير فارغ. إذا كنت ترغب في القيام ببعض التحقق الإضافي، يمكنك التحقق من نوع الكائن أيضا (غير ظاهر).

// From Global.asax.cs
protected void Application_Start(object sender, EventArgs e)
{
    if (Modules.AllKeys.Contains("UrlRoutingModules") 
        && Modules["UrlRoutingModule"] != null)
    {
        // the module is loaded
    }
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top