안녕하세요 목록에 항목을 비동기 적으로 추가하려고하는데 어떻게 완료되었는지 확실하지 않습니다. 잘못된 구문을 사용하고있는 경우 이것이 제가 지금 가지고있는 것입니다. :List.add() 비동기 작업이 올바른 구문을 기다리고 있습니다
내보기 :
await viewModel.getMessages();
list.ItemsSource = viewModel.Messages;
내보기 모델 : 나는 전체 개념 권리를 얻고 만약 내가 확실하지 오전하지만 어떻게 내가 내 목록에 항목을 추가 기다리고 있습니다
public List<Message> Messages { get; set; }
public async Task getMessages()
{
await GetRemoteMessages();
}
private async Task GetRemoteMessages()
{
var remoteClient = new ChiesiClient();
var messages = await remoteClient.getMessages().ConfigureAwait(false);
//App.Database.
await SaveAll(messages).ConfigureAwait(false);
}
public async Task SaveAll(IEnumerable<Message> _messages)
{
foreach (var item in _messages)
{
await SaveMessage(item);
}
}
public async Task SaveMessage(Message item)
{
await Messages.Add(new Message // Cannot await void
{
Title = item.Title,
Description = item.Description,
Date = item.Date,
Url = item.Url
});
}
? 이 작업을 수행하는 올바른 방법은 무엇입니까?
이치에 맞지 않습니다. 왜 당신은 당신의 목록에 새로운 항목을 추가하기를 기다리고 싶습니까? –
[TPL] (http://msdn.microsoft.com/en-us/library/dd460717(v=vs.110) .aspx) 및 [RX] (http : //rx.codeplex .com /). 나는 Xamarin으로 얼마나 잘 플레이하고 있는지 잘 모르겠지만, Xamarin은 꽤 좋은 커버리지를 가지고있어서 그게 문제가되어서는 안된다. –
목록에 항목을 추가하는 것은 비동기 적으로 실행하여 이익을 보는 작업이 아닙니다. –