从Windows Azure存储中检索数据

时间:2013-07-07 07:18:11

标签: c# windows-phone-8 odata azure-storage azure-mobile-services

如何查询我的Windows Azure存储,例如:

(SELECT Name FROM User WEHRE DeviceID = App.Current.DeviceID)  

试过这个,似乎没有用

var Name = await App.MobileService.GetTable<User>()
    .Select(User => User.Name)
    .Where(User => User.DeviceID == App.Current.DeviceID); 

但我可以根据ID

查询表格
 var Name = await App.MobileService.GetTable<User>().LookupAsync(id);

是否有类似的方法来查询基于字符串的表(例如,电话DeviceID)而不是整数id?

用户类

public class User
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string DeviceID { get; set; }
    }

1 个答案:

答案 0 :(得分:2)

Where方法的结果仍然是查询对象,它还不是对象本身。您需要致电ToListAsyncToEnumerableAsync之一来实际提出请求:

var Name = (await App.MobileService.GetTable<User>()
    .Where(User => User.DeviceID == App.Current.DeviceID)
    .Select(User => User.Name)
    .ToEnumerableAsync()).FirstOrDefault();