मुझे अपने एक्शन फ़िल्टर में वर्तमान में लॉग इन किए गए उपयोगकर्ता तक पहुंचने की आवश्यकता है। पहचान को DelegatingHandler
द्वारा निष्पादन की श्रृंखला को आगे बढ़ाया गया है।WebApi ActionFilterAttribute, HttpActionContext एक्सेस उपयोगकर्ता नाम (IPrincipal)
मैं कर सकते हैं पहुँच वर्तमान IPrincipal
HttpContext.Current.User
का उपयोग कर। अब तक मैंने HttpContext.Current
का उपयोग करने से बचा है क्योंकि यह मुझे खराब शैली के रूप में दिखाई देता है। आपका पहला कोड केवल आईआईएस में होस्ट किए जाने पर ही काम करेगा और दूसरी बार इसमें System.Web
का संदर्भ शामिल होगा जो मुझे लगता है कि चोट नहीं पहुंची है, लेकिन यदि संभव हो तो मैं System.Net.Http
के साथ रहना पसंद करूंगा। अच्छा पुराना "HttpContext
" पर भरोसा करना गलत लगता है।
क्या ActionFilter
के भीतर उपयोगकर्ता की पहचान तक पहुंचने का कोई अन्य तरीका है? या यदि आप स्वयं होस्ट किए गए एप्लिकेशन को चलाने की योजना नहीं बनाते हैं तो HttpContext
का उपयोग करना ठीक है?
डॉन .. मैं वास्तव में प्रश्न पोस्ट करने से पहले वास्तव में अच्छी तरह से खोज करता हूं। 5 मिनट बाद मेरे पास दो कामकाजी उत्तर हैं :( – lapsus