У меня есть следующий код, который группы список FileInfos:Использование LINQ с, если-запрос
var group_infos =
from info in fileInfos
where info.Length < 1024 * 1024
group info by info.Name into g
where g.Count() > 1
orderby g.Count() descending, g.Key
select g;
Теперь я хочу сделать, если-запрос на групповой clausel. Может быть, с помощью строки
string groupClausel = "Name";
или перечисления:
public enum FilterMethod
{
Directory,
CreationTime,
DirectoryName,
Extension,
Length,
Name
}
Но я не знаю, как проверить строку или перечисление в групповой clausel .. Я знаю, что са синтаксис как
group info by (groupClausel == "Extension" ? info.Extension : info.Name) into g
Но это позволило мне выбрать только два атрибута ...
У вас есть идеи?
Значит, вы хотите больше условий? – procma
Нет, я хочу проверить, какой групповой метод хочет пользователь. Если он хочет группировать по имени: group by name. Если он хочет группировать по длине: группа по длине. если он хочет сгруппировать по ....... – Chpo7234