मेरे पास एक एएसपी.नेट एमवीसी एप्लीकेशन है जिसके लिए मैं ईवेंट लॉग करना चाहता हूं। मेरे पास पहले से ही सभी आवश्यक टूल के साथ एक लॉग क्लास है, लेकिन मुझे इसे तुरंत चालू करना और इसे बंद करना होगा (क्योंकि यह फाइलें खोलता है, इसलिए मैं जीसी पर निर्भर नहीं हो सकता)। अपने कार्यों के इस प्रकार दिखाई देगा:प्रत्येक नियंत्रक कार्रवाई से पहले/बाद में कोड निष्पादित करें
public ActionResult MainMenu()
{
CreateLog();
// Do controller stuff
Log(message);
// Do more controller stuff
CloseLog();
return View(mModel);
}
या मैं एक using
ब्लॉक इस्तेमाल कर सकते हैं, लेकिन यह सिर्फ एक छोटे से कम दखल होगा और यह अपवाद हैंडलिंग के साथ मुसीबतों पैदा करेगा। मैंने ActionFilters
पढ़ा है, जिसका उपयोग मैं अपने लॉग को बनाने और बंद करने के लिए कर सकता था, लेकिन तब मेरे पास विधि के अंदर लॉग ऑब्जेक्ट तक पहुंचने का कोई तरीका नहीं होगा।
क्या आपके पास कोई सुझाव है? मैं कोड दोहराने से कैसे बच सकता हूं?
संभावित डुप्लिकेट [MVC में प्रत्येक अनुरोध में एक विधि चलाएँ, सी #?] (Https://stackoverflow.com/questions/9511462/run-a-method-in-each-request-in-mvc -सी) – Liam