Tôi đang học về async/await, và chạy vào một tình huống mà tôi cần gọi một phương thức async để trả về một đối tượng hoặc danh sách cùng một đối tượng.
Đây có phải là cách phù hợp để triển khai không?C# 5.0 async đang chờ trả về một danh sách
từ AManager.cs
public async Task Initialize(string objectPath)
{
AnObject someObject = await BClass.GetAnObject(objectPath);
}
và điều này được được gọi là phương pháp
Class B:
public async Task<AnObject> GetAnObject(string objectPath)
{
AnObject someObj = new AnObject();
return someObj;
}
gì sẽ xảy ra nếu tôi muốn trả về một danh sách các đối tượng? Tôi nên tạo một wrapper có chứa một danh sách? và trả lại trình bao bọc đó?
Bởi vì đây không phải là áp dụng:
public async Task<List<AnObject>> GetAnObject(string objectPath)
có thể xây dựng thêm những gì bạn muốn đạt được một chút không? Cụ thể: Bạn muốn trả lại danh sách các đối tượng ở đâu? Trong GetAnObject. Vì sau đó "Tác vụ công khai không đồng bộ> GetAnObject (chuỗi objectPath)" là hoàn toàn hợp lệ. Bạn chỉ cần trả lại danh sách các đối tượng thay vì ... –
bigge