2015-04-21 26 views
0

我正在尝试更新名为Request的表中的条目。此表格包含“名称”和“已接受”等列。 我只想更新“Accepted”字段(它包含一个布尔值),以便它变为true。我只希望在满足某些条件时更新它,即数据库中的“名称”与文本框中的“名称”相同。Azure移动服务 - 更新数据库中的条目

private IMobileServiceTable<Request> requestTable= App.appClient.GetTable<Request>(); 
private MobileServiceCollection<Request, Request> requests; 

requests= await requestTable 
     .Where(c => c.Name == txtName.Text) 
     .ToCollectionAsync(); 

//what should I put here to update Accepted to true? 

await requestTable.UpdateAsync(requests); 

我该如何修改此代码,以便它将更新接受为true,但仅限于名称匹配的行?

任何帮助将不胜感激,谢谢。

回答

1

你可以这样做。

codes.ForEach(p => p.Request = true);

+0

谢谢您的回复。不幸的是,这仍然不适合我。它在“Foreach”下给出了一条红色的波浪线,表示DataModel.Code不包含“ForEach”的定义。有没有我从中错过的东西? – PhoenixFirenzy

+0

@PhoenixFirenzy,你可以尝试'ToListAsync'而不是'ToCollectionAsync',或者你可以将'code'转换为'IEnumerable',然后尝试'.ForEach'。 ForEach是一个适用于所有可枚举对象的lambda表达式,它应该可以工作! –

+0

是的,你已经完成了,我告诉过你了,顺便说一句,这个错误应该起作用吗? - 是否为lambda表达式.ForEach? –