Как написать один метод для обработки всех перестановок функции расширенного поиска в ASP.NET? - PullRequest
0 голосов
/ 12 октября 2011

У меня есть веб-страница ASP.NET с вкладкой расширенного поиска.В этой вкладке у меня есть 10 полей, которые можно использовать для уточнения поиска.Я хочу написать один метод для обработки всех перестановок, которые являются результатом этого поиска.

Каков наилучший способ достичь этого?Я знаю, что не могу создать объект поиска для хранения всех значений и передать его, поскольку объект не может быть представлен с бизнес-уровня на уровень пользовательского интерфейса).

Ответы [ 3 ]

2 голосов
/ 12 октября 2011
var query = dc.MyTable; // Base query here
if (Field1.Text != "") // Filter Field1
    query = query.Where(x => x.Field1 == Field1.Text);

if (Field2.Text != "") // Filter Field2
    query = query.Where(x => x.Field2 == Field2.Text);

grid.DataSource = query;
0 голосов
/ 12 октября 2011

У вас есть эти варианты ИМХО:

0 голосов
/ 12 октября 2011

Если вы используете LinqDataSource, вы можете указать в предложении Where что-то вроде (не проверено):

"(@Param1 == String.Empty || Field1 == @Param1) && (@Param2 == String.Empty || Field2 == @Param2) && etc... "

Где @ Param1, @ Param2 и т. Д. ... определены как WhereParameters вконтроль.Я использовал String.Empty, но вы должны использовать значение по умолчанию в зависимости от типа ваших параметров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...