Tôi bị nhầm lẫn với bao bì HttpClient
. Trước đó nó được phân phối như là một phần của gói Microsoft.Http.Net
NuGet trong khi System.Net.Http
được coi là di sản. Có vẻ như bây giờ nó ngược lại: có một gói System.Net.Http
mới cho tất cả các nền tảng và Microsoft.Net.Http
chưa được cập nhật trong một thời gian và theo những người ở nhóm phát triển của Microsoft sẽ không còn được dùng nữa.Trạng thái hiện tại của System.Net.Http so với Microsoft.Net.Http
câu hỏi sau đó:
- Chúng ta có thể thay thế phụ thuộc vào
Microsoft.Net.Http
gói với (mới nhất)System.Net.Http
NuGet? - Nền tảng .NET 4.0 cũ có nên sử dụng
Microsoft.Net.Http
không? Điều gì về nền tảng không phải Windows (iOS, Android)? CácSystem.Net.Http
mới hỗ trợ chúng, nhưng tôi nhớ vớiMicrosoft.Net.Http
Tôi đã phải cài đặt bổ sungMicrosoft.Bcl.Build
vàMicrosoft.Bcl
để có được công cụ đa nền tảng hoạt động.System.Net.Http
không phụ thuộc vào chúng. Các gói Bcl có thể bị bỏ qua không? System.Net.Http
thiếu một số phương thức mở rộng của Http, nhưSupportsPreAuthenticate
và cố gắng gọi các phương thức này dẫn đến lỗi thời gian chạy (phương pháp bị thiếu). Làm thế nào chúng ta nên đối phó với điều này?
Bản sao có thể có của [System.Net.Http vs Microsoft.Net.Http] (http://stackoverflow.com/questions/31053243/system-net-http-vs-microsoft-net-http) – DonO
Chỉ cần cung cấp một lý do có thể cho sự thay đổi: Các tính năng ngăn xếp mạng khác nhau một chút giữa nền tảng Windows và các hệ điều hành khác. Tôi đã gặp rắc rối khi sử dụng một ứng dụng .NET được viết cho Windows trong môi trường Mono chẳng hạn. Sự thay đổi có thể chỉ ra rằng cuối cùng nó sẽ có thể thực sự là nền tảng độc lập, điều này có thể là lý do tại sao chúng di chuyển mọi thứ vào không gian tên System. Tìm kiếm các tham chiếu đến gói Http này từ .NET Core, có thể trả lời câu hỏi của bạn. – flohack