このような LINQ の作成について短い質問があります。「eventname」という名前のフィールドに基づいて、データベースからレコード「event」を検索する必要があります。そのフィールドは、それぞれの特定のケースに応じて、「%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
{
...
};