У меня есть модель:Асинхронные Ждут с настраиваемым типом C#
public class News
{
public int Id { get; set; }
public string Title { get; set; }
public string Body { get; set; }
public ObservableCollection<Comment> Comments { get; set; }
}
public class Comment
{
public int CommentId {get;set;}
public string CommentTitle{get;set;}
public string CommentBody{get;set;}
}
public class APIData()
{
public async Task<News> myNews()
{
var result = new News()
/// GET xmlDATA
var objComments = new ObservableCollection<Comment>();
foreach(x in xmlData)
{
var objComment = new Comment();
////////////
objComments.Add(objComment);
}
result.Comments = objComments;
return result;
}
, когда я пытаюсь получить доступ к нему с помощью api.myNews().Comments;
я сказала об ошибке;
System.Threading.Tasks.Task does not contain a definition for Comments and no extension method accept first argument of type System.Threading.Tasks.Task could be found.
Пожалуйста, дайте мне знать. об этом проблема.
'ждут' к чему? 'myNews' будет выполняться синхронно. –
Я получил эту ошибку: Оператор «ожидание» может использоваться только в методе async. Рассмотрите возможность маркировки этого метода с помощью модификатора «async» и изменения его типа возврата на «Задача» – UFO
Это зависит от контекста метода. Если вы выполняете его внутри обработчика события, например, нажмите кнопку, а затем отметьте метод как асинхронный. В противном случае вам может потребоваться обработать «Задачу» синхронно. – Romoku