Entity Framework возвращает все проекты, содержащие подстроку - PullRequest
0 голосов
/ 25 сентября 2019

Я работаю на основном сайте asp.net, где я пытаюсь сделать запрос к нашей базе данных проекта через структуру сущностей.Идентификаторы нашего проекта установлены следующим образом:

0192-10-001, 0192-10-001A, 0192-10-001B, 0192-10-001C, 0192-10-001BE, ...

для того же проекта, но отслеживаются письмами через отдельные отделы.Я хочу иметь возможность вычеркнуть буквы и вернуть все проекты, связанные с подстрокой (0192-10-001). Я новичок в linq и, скорее всего, полностью обдумываю это, но надеюсь, что кто-то может указатьменя в правильном направлении.

Я пробовал следующие запросы:

//This is what I thought would work
return _context.Projects.Where(a => a.Project_ID.Contains(ID));

//Another approach
return _context.Projects.Where(a => a.Project_ID == ID);

//Getting more confused and desperate
return _context.Projects.Where(a => ID.Any(n => a.Project_ID.Contains(ID)));

Дайте мне знать, если вам нужна дополнительная информация!

Ответы [ 2 ]

0 голосов
/ 25 сентября 2019

Это работа для меня.Но текст для поиска должен совпадать с идентификатором.

var filtered = _context.Projects.Where(x => "0192-10-001".Contains(x.ID)).ToList();

Вы можете поставить переменную вместо текста "0192-10-001".

0 голосов
/ 25 сентября 2019

Если вы хотите вернуть список проектов, для которых Project_ID содержат ID ("0192-10-001"), просто используйте

var list = _context.Projects.Where(p => p.Project_ID.Contains(ID)).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...