سؤال

ما أفهمه هو أن رفع أخطاء يجب أن يسجل خطأي أو يضغط على فئة CustomERRORWITHELMAHATTRIBET (مأخوذة من هذا مثال) ، لكنها لا.

أنا أستخدم Decorator GealtherrorWithelmah لوحدة التحكم في السؤال. يعمل تسجيل الخطأ عندما يتعلق الأمر باستثناءات غير معطلة في وحدة التحكم (أنا أتصل صراحةً بوجيكس وعدم استخدام الشروط المذكورة في كتلة الكود الثاني من مثال). لكن ميزة إشارات الخطأ التي سيتم استخدامها للأخطاء التي يتم التعامل معها تبقيني محيرًا. كيف تعمل إشارات الخطأ ... هل من المفترض أن تفعل شيئًا آخر غير التسجيل ... إذا كان الأمر كذلك ، فكيف يمكنني استخدامه لتسجيل استثناءات المعالجة الخاصة بي؟

هذا هو الكود الذي أستخدمه للإشارة إلى الأخطاء التي تم التعامل معها

ErrorSignal.FromCurrentContext().Raise(new Exception("Some Handled Error")); 

فيما يلي مقتطفات من إعداداتي في تكوين الويب

  <configSections>
        <sectionGroup name="elmah">
            <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
            <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
            <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
            <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
        </sectionGroup>
     </configSections>


<elmah>
<security allowRemoteAccess="yes" />
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="Log" />
</elmah>



<httpHandlers>
    <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<httpModules>
    <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
</httpModules>
هل كانت مفيدة؟

المحلول

أنا أستخدم Elmah مع .NET MVC وتربية استثناءات Elmah تعمل بشكل برمجي بالنسبة لي. قد أمسك بالقش هنا ولكن من النظر إلى التعليق الرابع هذه الصفحة يوجد في موقع Elmah بعض الخطوط المدرجة في الويب.

قد يكون أنك لم تتضمن الخطوط الموجودة في المقتطف الخاص بك ، لكنني اعتقدت أنني سأرميها هناك على أي حال

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