Я пытаюсь написать фильтр для выбора, сделанного с помощью кнопок - PullRequest
1 голос
/ 15 октября 2019

Я новичок в c # с linq и пытаюсь выяснить, как сделать множественный выбор фильтра с помощью кнопок.

Я подключен к базе данных, у меня есть enum stats{approved, rejected, pending approval, pending rejected, cancelled};

Список типа IEnumerator, как мне сделать так, чтобы код мог быть более управляемым, так как можно продолжать добавлять N вариантов в будущем, и он все равно будет работать вместо использования if else or switch cases для жесткого кодирования всех возможныхслучаи.

например,

if(stats contains approve)
List = List.dbset.where(x => x.id.stats == approved);

//return the view that displays all the list of things with stats approved.

Не уверен, как я собираюсь объединить это в цикл. Требуется некоторая помощь.

Требуется вывод, что я могу выбрать 2 или более кнопок, и список возвращает эти выбранные элементы значений фильтра.

Ответы [ 2 ]

0 голосов
/ 18 октября 2019

Хорошо, на самом деле проблема в том, что возвращаемые представления всегда возвращают список со всем, несмотря на многократную фильтрацию. Все, что я сделал, это создал новый список отображения и объединял каждый отфильтрованный список при применении фильтра и возвращал этот список отображения

0 голосов
/ 15 октября 2019

Может быть, вы можете разработать метод фильтра, подобный этому, чем можно отправить некоторые значения для фильтрации;

List<yourType> filteredList = dbset.ToList();
if(stats1 contains approve){
    List<yourType> filteredList = filteredList.where(x => 
x.id.stats==approved).ToList();
}
if(stats2 contains approve){
    List<yourType> filteredList = filteredList.where(x => 
x.id.stats==approved).ToList();
}
return filteredList;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...