实体框架和类似[重复]的地方

问题描述 投票:2回答:4

这个问题在这里已有答案:

我正在使用这个指令:

db_user = db.CBR_User.FirstOrDefault(p => p.Codice_Fiscale == code);

我想使用“like”运算符而不是==来管理不区分大小写

怎么办?

谢谢

c# entity-framework-4 where
4个回答
1
投票

如果你想进行平等比较,我建议两种方式:

db_user = db.CBR_User.FirstOrDefault(p => p.Codice_Fiscale.Equals(code, StringComparison.OrdinalIgnoreCase));

要么

db_user = db.CBR_User.FirstOrDefault(p => p.Codice_Fiscale.ToUpper() == code.ToUpper());

如果您不想这样,可以使用参数StringComparison.OrdinalIgnoreCase使用StartsWith,Contains等。


3
投票

你可以使用Contains()

db_user = db.CBR_User.FirstOrDefault(p => p.Codice_Fiscale.Contains(code));

1
投票

我知道这是一个古老的话题,但要扩展Kristof Claes所说的话,

db_user = db.CBR_User.FirstOrDefault(p => p.Codice_Fiscale.ToUpper().Contains(code.ToUpper()));

如果您使用ToUpper选项,它将表现为不区分大小写的搜索。如果你有这种倾向,你可以使用ToLower做同样的事情。


0
投票

在LINQ To Entity中,你可以使用像StartsWith,EndsWith和Contains这样的函数

© www.soinside.com 2019 - 2024. All rights reserved.