C# Azure查询可能存在性能问题

C# Azure查询可能存在性能问题,c#,azure,xamarin,xamarin.forms,azure-mobile-services,C#,Azure,Xamarin,Xamarin.forms,Azure Mobile Services,我有以下代码: IEnumerable<Users> allItems = await MobileService.GetTable<Users>().CreateQuery().ToEnumerableAsync(); foreach (var item in allItems) { if (item.Email.Equals(emailEntry.Text)) { emailIsValid = true; } } IEnumerab

我有以下代码:

IEnumerable<Users> allItems = await MobileService.GetTable<Users>().CreateQuery().ToEnumerableAsync();

foreach (var item in allItems) {
    if (item.Email.Equals(emailEntry.Text)) {
        emailIsValid = true;
    }
}
IEnumerable allItems=wait MobileService.GetTable().CreateQuery().ToEnumerable异步();
foreach(所有项目中的var项目){
if(item.Email.Equals(emailEntry.Text)){
emailIsValid=true;
}
}

它检索my azure表中的所有项目,然后检查文本字段中输入的电子邮件是否有效(与azure表中的一个匹配)。问题是,在我看来,由于我的表中可能有数千个用户日志,我不知道这种电子邮件验证方法在性能方面是否可行,如果不可行,还有什么更好的方法可以做到这一点?

构造查询来完成服务器端的大部分繁重工作。应用筛选器以减少导线上的数据量

像这样的

var email = emailEntry.Text;
var query = await MobileService.GetTable<Users>()
                               .Where(item => item.Email == email)
                               .ToEnumerableAsync();

var emailIsValid = query.Any();
var email=emailEntry.Text;
var query=await mobileseservice.GetTable()
.Where(item=>item.Email==Email)
.ToEnumerableAsync();
var emailIsValid=query.Any();

除非需要使用所有用户,否则无需获取所有用户。

构造查询以在服务器上完成大部分繁重工作。应用筛选器以减少导线上的数据。