我尝试通过检查用户名来查看通过API提供的用户是否存在于表存储中。代码如下所示:
public async Task<bool> UserExistsAsync(User user)
{
var username = user.Username.Trim();
var query = _usersTableClient.QueryAsync<UserEntity>(u =>
u.Username.Trim().Equals(username, StringComparison.InvariantCultureIgnoreCase));
await foreach (var page in query.AsPages())
{
if (page.Values.Any())
return true;
}
return false;
}
但是,此代码返回错误,因为不支持使用Trim()方法查询Azure表存储:
不支持方法修剪。
我需要删除空格,因为表中充满了包含空格的值(例如”SomeUser”)。我没有访问该表的权限,也无法要求客户端删除空格。此外,还将加载内存中的所有条目并逐个检查它们(并最终在加载后修剪它们)并不是一个解决方案,因为表有超过100k的行。有没有我可以使用的解决方案来完成这个任务?
编辑:尝试使用Contains()、Substring(),它们也是不允许的。
1条答案
按热度按时间hivapdat1#
在Azure中创建一个存储帐户,并使用代码中的连接字符串。
用于修剪的C#代码
例如,下面突出显示的客户名称有空格。
并且可以使用下面的代码删除此空白。