Tôi muốn sử dụng khung Nhiệm vụ trong .NET để lên lịch để chạy trên một chuỗi khác nhau khi nó được thực hiện tiếp tục với một thao tác để cập nhật giao diện người dùng trên chuỗi giao diện người dùng. (Tôi đã không chơi với nó nhiều, vì vậy nó không phải rất quen thuộc với tôi.)C# Task.ContinueVới các vấn đề
Đây là mã:
Task<List<NewsItem>> fetchTask = new Task<List<NewsItem>>(() =>
{
List<NewsItem> items = Rss.FetchNewsItems(feed);
return items;
}).ContinueWith(x => UpdateNewsItems(x.Result),CancellationToken.None,TaskContinuationOptions.None,scheduler);
private void UpdateNewsItems(List<NewsItem> items)
{
...
}
Không thể ngầm chuyển đổi loại 'System.Threading.Tasks.Task' để 'System.Threading.Tasks.Task < System.Collections.Generic.List <Spark.Models.NewsItem> >'. Một chuyển đổi rõ ràng tồn tại
Tôi nghĩ rằng nếu tôi sử dụng chữ ký chung của Danh sách <NewsItem> trên nhiệm vụ Task.Result sẽ trả về loại đó để tôi có thể chuyển nó đến phương pháp của tôi ... Tôi đang làm gì sai ở đây?
không đồng bộ/chờ đợi có thể giải quyết vấn đề này dễ dàng. –
Vâng, không phải khi tôi viết bài này. – Kelly