2016-02-12 10 views
6

मैं अपने Asp.Net5 MVC 6 वेब अनुप्रयोग में Membership Reboot उपयोग कर रहा हूँ मेरी पहचान प्रबंधन करने के लिए, लॉगिन आदिGetOwinContext 6

मैं एमआर के OwinAuthenticationServiceIAuthenticationService इंटरफेस के लिए एक कार्यान्वयन के रूप में काम पाने के लिए कोशिश कर रहा हूँ जो मैं मेरे नियंत्रकों में इंजेक्शन निर्भरता निर्भर हूँ।

इस के लिए

नमूना निम्न Autofac पंजीकरण का उपयोग कर के आधार IAuthenticationService इंजेक्शन शामिल है:

builder.Register(ctx=>HttpContext.Current.GetOwinContext()).As<IOwinContext>(); 
builder.Register<IAuthenticationService>(ctx => 
{ 
    var owin = ctx.Resolve<IOwinContext>(); 
    return new OwinAuthenticationService(
     MembershipRebootOwinConstants.AuthenticationType, 
     ctx.Resolve<IUserAccountService>(), 
     owin.Environment); 
}).InstancePerLifetimeScope(); 

MVC5 में, वह ठीक HttpContext.Current.GetOwinContext() रूप Microsoft.Owin.Host.SystemWeb विधानसभा में एक विस्तार पद्धति के रूप में किया जाएगा। हालांकि, इस असेंबली का अब एमवीसी 6 में उपयोग नहीं किया जाता है और इसलिए HttpContext.Current हल नहीं होता है।

मैंने देखा है कि HttpContext तक पहुंचने का नया तरीका नया IHttpContextAccessor इंटरफ़ेस का उपयोग कर रहा है, लेकिन यह ओविन संदर्भ प्राप्त करने की समस्या का समाधान नहीं करता है।

क्या एमवीसी 6 में वर्तमान ओविन संदर्भ प्राप्त करने का कोई तरीका है, या वर्तमान ओविन पर्यावरण शब्दकोश (क्योंकि OwinAuthenticationService कक्षा का उपयोग करता है)?

+0

मैं कुछ प्रमाणीकरण पर काम कर रहा हूं जो ओविन के साथ काम करता है और अभी तक नई एएसपी.नेट कोर दुनिया में समर्थित नहीं है और एक ही समस्या में चल रहा है। क्या आपको पुराने के साथ पुराने काम करने का कोई तरीका मिला? ओविन संदर्भ तक पहुंच के बिना नियंत्रक से स्टार्टअप पर ओविन संदर्भ में कॉन्फ़िगर किए गए कॉन्फ़िगरेशन के साथ मुझे ट्रिगर करने के लिए मेरा साइनआउट नहीं मिल सकता है। –

+0

मेरे पास एक ही समस्या है। मुझे वास्तव में साइनऑट उपयोगकर्ता के लिए ओविन संदर्भ की आवश्यकता है। कोई कामकाज_ –

उत्तर

0

Owin, ASP.NET कोर 1.0 (उर्फ ASP.NET 5) में अपनी स्थिति को खो दिया

https://docs.asp.net/en/latest/fundamentals/owin.html

लेकिन आप ऊपर पेज पर सभी जानकारी पा सकते हैं। ऐसा लगता है कि ओविन संदर्भ चला गया है।