मैं एएसपी.नेट कोर का उपयोग कर रहा हूं। मैं HttpClient
का उपयोग करना चाहता हूं लेकिन मैंने देखा कि दो NuGet पैकेज पेश किए जा रहे हैं। मैं किस का उपयोग करता हूं?System.Net.Http बनाम माइक्रोसॉफ्ट.Net.Http
उत्तर
संस्करण पर निर्भर करता है। वर्ष System.Net.Http
पैकेज (2.0 वाले) विवरण के अनुसार विरासत संकुल जो Microsoft.Http.Net
के पक्ष में पदावनत किया जाता है:
विरासत पैकेज, System.Net.Http अब 'में शामिल है Microsoft.Net.Http 'पैकेज।
वे पिछले .NET संस्करणों और पोर्टेबल क्लास पुस्तकालयों में HttpClient
प्रदान करने के लिए मौजूद हैं। आपको उस मामले में Microsoft.Net.Http
का उपयोग करना चाहिए।
चूंकि आप .NET कोर का उपयोग कर रहे हैं, तो आपको नवीनतम System.Net.Http
पैकेज (उदाहरण 4.3.3) का उपयोग करना चाहिए।
csproj
के लिए अपडेट किया गया नेट स्टैंडर्ड 2.0 के रूप में, System.Net.HttpClient
पैकेज पहले से ही शामिल है और उपलब्ध है जब आप netstandard2.0
को लक्षित कर रहा है। आप अपने csproj फ़ाइल को यह जोड़ सकते हैं किसी कारण से आप अभी भी दोनों पूर्ण नेट और .NET कोर के लिए इसे संदर्भ करना चाहते हैं:
<ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
<!-- // HttpClient for full .NET -->
<Reference Include="System.Net.Http" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'netstandard2.0' ">
<!-- // HttpClient for .NET Core -->
<PackageReference Include="System.Net.Http" Version="4.3.3" />
</ItemGroup>
आप project.json
उपयोग कर रहे हैंयदि आपका प्रोजेक्ट.जेसन पूर्ण .NET और .NET कोर दोनों को लक्षित करता है, तो आपको System.Net.Http
असेंबली को frameworkAssemblies
तत्व में जोड़ना होगा। उदाहरण के लिए:
"frameworks": {
"net451": {
"frameworkAssemblies": {
"System.Net.Http": "4.0.0.0" // HttpClient for full .NET
}
},
"netstandard1.3": {
"dependencies": {
"System.Net.Http": "4.1.0", // HttpClient for .NET Core
}
}
}
ध्यान रखें कि उनके पास एक ही व्यवहार नहीं है। पूर्ण .NET संस्करण (4.0.0.0) स्वचालित संपीड़न नहीं करता है, जबकि .NET कोर संस्करण (4.1.0) करता है। तो यदि आप पूर्ण .NET संस्करण का उपयोग करते हैं तो आपको gzip/deflate संपीड़न का उपयोग करने के लिए मैन्युअल रूप से हैंडलर को कॉन्फ़िगर करना होगा। विवरण: https://github.com/dotnet/docs/issues/1054 –
यह उत्तर बताता है कि यह .NET कोर, .NET मानक और .NET Framework के साथ क्या गड़बड़ है। – Vincent
@ एविन्सेंट जब लोग मोनो आदि का इस्तेमाल करते हैं तो गधे में दर्द का कोई और दर्द नहीं होता है। मल्टी प्लेटफ़ॉर्म में हमेशा कुछ दर्द बिंदु होते हैं। – rolls
Microsoft.Net.Http
अतिरिक्त Microsoft.Bcl
निर्भरता की आवश्यकता है।
इसके लिए, यदि आप केवल लक्षित हैं .NET Framework या .NET Core, System.Net.Http
जाने के लिए अच्छा है। अन्यथा, Microsoft.Net.Http
बेहतर विकल्प होगा क्योंकि यह अगली पीढ़ी हो सकती है।
लगता है कि एमएस ने अपने दिमाग को बदल दिया है क्योंकि इस पोस्ट के अनुसार ... https: //stackoverflow.com/questions/39016373/the-current-status-of-system-net-http-vs-microsoft-net-http microsoft .net.http 2015 से अद्यतन नहीं किया गया है, जबकि system.net.http बस कुछ महीने sago (nuget) है। – smoore4
- 1. माइक्रोसॉफ्ट.Net.Http बनाम माइक्रोसॉफ्ट.एस्पनेट.एबएपीआई.क्लिएंट
- 2. System.Net.Http बनाम Microsoft.Net.Http
- 3. फ़ाइल या विधानसभा 'System.Net.Http
- 4. ASP.net वेब एपीआई और System.Net.Http
- 5. वेब एपीआई: System.Net.Http संस्करण 2.0.0.0
- 6. जब एक हटाएं वेब एपीआई System.Net.Http
- 7. System.Net.Http NuGet पैकेज 4.3.0 संदर्भ ver 4.0.0.0 संदर्भ
- 8. फ़ाइल या असेंबली लोड नहीं हो सका System.Net.Http संस्करण 4.1.1.0
- 9. StringContent बनाम ObjectContent
- 10. फ़ाइल या असेंबली 'System.Net.Http' या इसकी निर्भरताओं में से कोई भी लोड नहीं हो सका
- 11. फ़ाइल या असेंबली लोड नहीं कर सका "System.Net.Http, संस्करण = 4.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = b03f5f7f11d50a3a"
- 12. mongoose save vs बनाम बनाम बनाम बनाम
- 13. बनाम बनाम
- 14. : बनाम बनाम ::
- 15. * बनाम ** बनाम ***?
- 16. स्पाइडरमोन्की बनाम जावास्क्रिप्ट बनाम बनाम?
- 17. Mercurial: भ्रष्टाचार बनाम रिकॉर्ड बनाम qrecord बनाम शेल्व बनाम प्रत्यारोपण बनाम dirstate बनाम कतार
- 18. LINQ बनाम लैम्ब्डा बनाम अज्ञात तरीके बनाम बनाम
- 19. एनएचबीर्नेट एचक्यूएल बनाम मानदंड बनाम क्वेरीरी बनाम लिंक बनाम। प्रदर्शन
- 20. एलजी 4 बनाम lz4_hc बनाम ब्लॉस्क बनाम स्नैपी बनाम फास्टलज़
- 21. MySQL मौजूदा बनाम बनाम subquery बनाम subquery बनाम?
- 22. डीकोड और व्याख्या को बनाम बनाम बनाम बनाम
- 23. इनलाइन बनाम __inline बनाम __inline__ बनाम __forceinline बनाम?
- 24. सीमा बनाम बनाम बनाम गिनती (*) बनाम गिनती (आईडी) MySQL
- 25. एपीआई बनाम टूलकिट बनाम फ्रेमवर्क बनाम लाइब्रेरी
- 26. pymssql बनाम pyodbc बनाम adodbapi बनाम ...
- 27. एटमिकोस बनाम जेओटीएम बनाम बिट्रोनिक्स बनाम?
- 28. न्यूट बनाम एमबीयूनीट बनाम एमएसटीएस्ट बनाम xUnit.net
- 29. विधि बनाम फंक्शन बनाम प्रक्रिया बनाम कक्षा?
- 30. .NET बनाम एएसपी.नेट बनाम सीएलआर बनाम एएसपी
ऐसा लगता है कि 'System.Net.Http'' Microsoft.Net.Http' पर निर्भर करता है। लेकिन फिर, यह इस बात पर निर्भर करता है कि आप अपने आवेदन के साथ क्या करने की कोशिश कर रहे हैं। –