我有一个关于像这样制作 LINQ 的简短问题:我必须根据名为“事件名称”的字段从数据库中找到一个记录“事件”。该字段可以是“%abc”或“abc%”或“%abc%”,具体取决于每个特定情况。
int pos;
//define the position of % in finding string, pos=1: %abc, pos=2: abc%, pos=3: %abc%
var SQLquery =
(from event evn in database.events
where (
case pos=1: evn.CarNumber.EndsWith(string))
case pos=2: evn.CarNumber.StartsWith(string))
case pos=3: evn.CarNumber.Contains(string))
select new DataRecord
{
...
};
有没有办法处理这种情况?提前致谢。
感谢 King King,它适用于
var SQLquery =
(from event evn in database.events
where (
(pos==1 && evn.CarNumber.EndsWith(string)) ||
(pos==2 && evn.CarNumber.StartsWith(string)) ||
(pos==3 && evn.CarNumber.Contains(string))
select new DataRecord
{
...
};