Я реализую функцию поиска для приложения, которое использует сущность framework. Существует несколько необязательных полей для поиска конкретной таблицы/представления базы данных. Каков наилучший способ реализовать такой поиск с помощью EF? Хранимая процедура? Или это можно сделать (реалистично) с помощью Linq?Entity Framework - dynamic sql
1
A
ответ
2
Вы можете быть в состоянии сделать это в LINQ достаточно легко. Всегда помните, что запросы LINQ связаны друг с другом:
var query = (from p in products
select p);
if(field1 != null)
{
query = (from p in query
where p.Field1 = field1
select p);
}
if(field2 != null)
{
query = (from p in query
where p.Field2 = field2
select p);
}
foreach(Product p in query)
{
// ...
}
1
Что говорит Лорен (1). Или используйте Microsoft Dynamic LINQ. Он отлично работает с L2E.
0
Вы можете взглянуть на this article о динамическом создании объектов выражения лямбда для этого.
3
Общий шаблон для обработки дополнительных параметров поиска, чтобы сделать что-то вроде этого:
string p = null;
var q = from o in dataContext.Products
where ((o.Name == p) || (p == null))
select o;
Смежные вопросы
- 1. Dynamic Entity Framework запрос
- 2. Dynamic lazyLoading - Entity Framework
- 3. Dynamic SQL Error (.NET-Жар Entity-Framework)
- 4. Entity framework 4, Dynamic query
- 5. Dynamic Entity Framework на Web API
- 6. Dynamic Entity Framework .ToList() возвращающая ошибка
- 7. Dynamic Строка подключения в Entity Framework
- 8. Entity Framework 4.1 - Dynamic жадная загрузка
- 9. Entity Framework, unmapped property и Dynamic Data
- 10. Entity FrameWork Dynamic Где с OR Условие
- 11. Entity Framework DBContext и dynamic ConnectionString
- 12. Получить Entity Framework Model first Entity Name dynamic
- 13. SQL, MVC, Entity Framework
- 14. Entity Framework + sql injection
- 15. Оператор SQL Entity Framework
- 16. Entity FrameWork SQL Query
- 17. SQL to Entity Framework
- 18. Doctrine dynamic Entity attributes
- 19. ADO.Net entity framework SQL loginPermissions
- 20. SQL Pooling with Entity Framework
- 21. Entity framework raw SQL Query
- 22. SQL-представления с Entity Framework
- 23. SQL injection с Entity Framework
- 24. C# Entity Framework Ошибка SQL
- 25. C# Entity Framework SQL Query
- 26. Weird SQL using Entity Framework
- 27. Преобразование SQL в Entity Framework
- 28. Entity Framework SQL Query Execution
- 29. Entity Framework сгенерированный SQL медленный
- 30. SQL Caching и Entity Framework
Будет ли первоначальное определение «запроса» причина «выберите * из продуктов» должна быть выполнена? – Jeremy
Нет. Запросы LINQ не перечислены (т. Е. Результаты не извлекаются из БД) до последнего момента. Вызовы просто накапливаются, а затем, когда вам нужно получить доступ к определенному элементу результата (или счету и т. Д.), Весь собранный запрос извлекается из БД. – kevingessner