में कन्स्ट्रक्टर पैरामीटर के साथ निर्भरता इंजेक्शन। मैं .NET कोर में DI का उपयोग करने के तरीके पर बहुत से कोड उदाहरण देखता हूं, हालांकि उनमें से कोई भी कन्स्ट्रक्टर पैरामीटर का उपयोग नहीं करता है।.net कोर
उदाहरण के लिए:
- प्राधिकरण सेवा बनाएं
- निर्माता
- में वर्तमान HTTP हेडर (एक्स-एपीआई कुंजी) सम्मिलित करें कार्यान्वयन की जांच में अगर मैं पहुँच
है यहां मुझे केवल IAuthorizationService
पर DI का उपयोग करने की आवश्यकता नहीं है बल्कि कन्स्ट्रक्टर में टोकन इंजेक्ट करने की आवश्यकता है। मुझे पता है कि निनजेक्ट में इसे कैसे किया जाए, हालांकि .NET कोर DI में कोई अनुभव नहीं है।
यहां मेरे उदाहरण के रूप में है।
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddEntityFrameworkSqlite();
services.AddDbContext<MainDbContext>();
services.AddScoped<IAuthorizationService, AuthorizationService>(); // Inject current HttpContext header value as a constructor?
}
[आप इस दस्तावेज़ को देखा है] (https://docs.asp.net/en/latest/fundamentals/dependency:
जब सही ढंग से कॉन्फ़िगर है, हम नियंत्रकों या सेवाओं में
ApiKeyAccessor
उदाहरण इंजेक्षन कर सकते हैं -injection.html) –क्या आपको टोकन इंजेक्ट करने की आवश्यकता है, या क्या आप टोकन प्रदान करने वाली कक्षा के लिए इंटरफ़ेस इंजेक्ट कर सकते हैं? –
@ स्कॉटहैनेन एचएम, मुझे लगता है कि वास्तव में कोई फर्क नहीं पड़ता। हालांकि टोकन बेहतर होगा क्योंकि टेस्टेबिलिटी तब आसान होगी। – sed