كيف يمكنني الجمع بين "إنقاذ" MVCContrib مع Elmah؟
-
21-09-2019 - |
سؤال
أنا أخذت سمة الإنقاذ عمل. إنه يخدم بشكل صحيح عرض العجز عندما يكون هناك استثناء غير معقول.
ومع ذلك ، فإن هذه الاستثناءات لن يتم تسجيلها أو إرسالها بالبريد الإلكتروني. هذا السؤال جدا يتم الرد عليها من قبل Atif Aziz وتبدو صلبة إلى حد ما ، ولكنها تنطبق على المقبض المدمج ، الذي يحل محله الإنقاذ ، أليس كذلك؟ كيف يمكنني العمل مع الإنقاذ؟ أريد أن أتأكد من أنه في حالة ظهور استثناء غير معبأ ، يتم تقديم عرض المستخدم المحدد مع سمة الإنقاذ ، ولكن لا يزال الاستثناء مسجلاً بشكل صحيح ، ويمكن عرضه باستخدام elmah.axd.
تحديث:
var currentContext = HttpContext.Current;
Elmah.ErrorSignal.FromContext(currentContext).Raise(ViewData.Model.Exception, currentContext);
أضفت ما سبق إلى عرضي ويسجل أخطاء ورسائل البريد الإلكتروني بشكل صحيح الآن. ومع ذلك ، لا يبدو أن القيام بذلك في الرأي هو حق شيء. هل لدى أي شخص فكرة أفضل؟
المحلول
يمكنك استدعاء سجل Elmah بشكل صريح من صفحة العرض:
using Elmah;
var context = HttpContext.Current;
ErrorLog.GetDefault(context).Log(new Error(e, context));
لا تنتمي إلى StackOverflow