Cách duy nhất an toàn để sử dụng async/chờ đợi trong .net 4.0 hỗ trợ xp người dùng mà không cần cài đặt KB2468871 đang cài đặt async CTP v3 trong vs 2010 SP1, nuget microsoft bcl async và triển khai AsyncTaskMethodBuilder và AsyncVoidMethodBuilder riêng. (và loại bỏ tham chiếu async ctp dll)
Đó là cách duy nhất để thực hiện không đồng bộ CTP không đồng bộ trong .net4, so với 2010, không cài đặt so với 2012, net 4.5 hoặc KB2468871 S WORK LÀM VIỆC.
Bất kỳ người nào khác sẵn sàng sử dụng tính năng đồng bộ hóa trên .net4 ngoài đó sử dụng cách triển khai mới và bắc cầu mã async trong quá trình biên dịch, đó là lý do bạn cần cài đặt CTP không đồng bộ. , sửa đổi trình biên dịch csc để hỗ trợ nó.
Microsoft đã thay đổi sử dụng trình biên dịch loại trong c5 và 4.5 để tạo mã async, về cơ bản chúng có thể dễ dàng thực hiện cho .net4, nhưng thay vào đó chúng chọn buộc bất kỳ ai cài đặt so với năm 2012 và .net 4.5, cái gì đó là không thể chấp nhận cho các công ty cần hỗ trợ người dùng xp, bởi vì bạn sẽ không có cách nào để xem và sửa bất kỳ lỗi .net 4 nào đã được sửa trong .net 4.5.
Microsoft.Bcl.Async, AsyncTargetingPack, AsyncBridge tất cả đều KHÔNG HOẠT ĐỘNG nếu không có .net 4.5 được cài đặt hoặc KB2468871 cho .net 4.0.
Chúng S ALL TẤT CẢ VIỆC nếu bạn thực hiện AsyncTaskMethodBuilder và AsyncVoidMethodBuilder trên của riêng bạn, bạn thậm chí có thể sao chép/dán nó thực hiện từ async ctp v3 với những thay đổi nhỏ và nó sẽ chỉ hoạt động.
Vì vậy, nếu bạn thực sự quan tâm bởi yêu cầu triển khai và những thứ khác liên quan đến việc hỗ trợ người dùng xp, tôi khuyên bạn nên làm là tôi mô tả.
Tôi đoán đó là yêu cầu triển khai. Lưu ý rằng ASP.NET * yêu cầu * .NET 4.5; sự hỗ trợ .NET 4.0 chỉ dành cho các ứng dụng dành cho máy tính để bàn. –
@StephenCleary, vâng, đây là ứng dụng dành cho máy tính để bàn nơi hỗ trợ XP vẫn là yêu cầu. – Dan
Sau khi đọc qua các ghi chú phát hành, tôi đoán rằng nó cần thiết vì Tính năng 5: hỗ trợ cho PCL. –