gpt4 book ai didi

c# - EF Core 3.0 正确翻译 string.Equals ordinalIgnoreCase

转载 作者:太空宇宙 更新时间:2023-11-03 20:48:00 25 4
gpt4 key购买 nike

在 EF Core 3.0 之前,这工作正常(在服务器+客户端上评估):

var exists = await _context.Countries.AsNoTracking().AnyAsync(x => x.CountryCode.Equals(country.CountryCode, StringComparison.OrdinalIgnoreCase));

在 EF Core 3.0 中翻译 string.Equals(str, StringComparison.OrdinalIgnoreCase) 部分的最佳/首选方法是什么,以便查询仅在服务器端计算。

var exists = await _context.Countries.AsNoTracking().AnyAsync(x => x.CountryCode.ToUpper() == country.CountryCode.ToUpper());

var exists = await _context.Countries.AsNoTracking().AnyAsync(x => x.CountryCode.ToLower() == country.CountryCode.ToLower());

var exists = await _context.Countries.AsNoTracking().AnyAsync(x => x.CountryCode.ToUpperInvariant() == country.CountryCode.ToUpperInvariant());

var exists = await _context.Countries.AsNoTracking().AnyAsync(x => x.CountryCode.ToLowerInvariant() == country.CountryCode.ToLowerInvariant());

还是别的?

最佳答案

你不应该那样做,也不应该使用接受的答案方法,你应该只使用不带参数的 String.Equals() 并在创建或迁移期间配置你的数据库排序规则。

关于c# - EF Core 3.0 正确翻译 string.Equals ordinalIgnoreCase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58640437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com