Я хочу добавить возможность «расширенного поиска» в мое приложение ASP.NET/SQL Server 2005. В идеале, я бы хотел, чтобы он был настольным. Например, если моя схема меняется с добавлением нового столбца в таблицу, которую я хочу найти, я бы хотел, чтобы пользовательский интерфейс отражал добавление нового столбца в качестве поля для поиска. Я могу представить некоторые контрольные таблицы, которые содержат доступные для поиска поля, их типы, связанные поиски и т. Д.
С этими таблицами можно ознакомиться при создании пользовательского интерфейса. Мой вопрос заключается в наилучшем подходе для создания динамического SQL . Один из подходов состоит в том, чтобы самому создать параметризованный оператор SQL. Но я заинтригован Linq, и почему-то я думаю, что пространство имен System.Linq.Dynamic - и Деревья выражений Linq - может обеспечить более элегантное / надежное решение?
Надеюсь, что любое такое решение будет работать с Linq to Sql или Linq to Entities. Прав ли я, чтобы исследовать этот путь, или это проблемное пространство на самом деле не является одним из вариантов использования для деревьев выражений?