Дозвуковой синтаксис Вопрос (с GroupBy) - PullRequest
0 голосов
/ 26 августа 2010

Есть ли способ сделать это:

SubSonic.Where filter = new SubSonic.Where();
filter.ColumnName = Region.Columns.Region;
filter.Comparison = SubSonic.Comparison.IsNot;
filter.ParameterValue = null;

SubSonic.Aggregate orderBy = new SubSonic.Aggregate(Region.Columns.RegionName, SubSonic.AggregateFunction.GroupBy);

RegionCollection regions = new RegionCollection().Where(filter).GroupBy(groupBy).Load();

Часть "GroupBy" в последней строке не компилируется ... (я использую SubSonic 2.1)

Ответы [ 2 ]

0 голосов
/ 11 ноября 2010

На всякий случай, если нет причины, вам нужна старая конструкция Where:

SubSonic.Aggregate groupBy = new SubSonic.Aggregate(Region.Columns.RegionName, SubSonic.AggregateFunction.GroupBy);

RegionCollection regions = new SubSonic.Select(groupBy).From(Region.Schema).Where(Region.RegionColumn).IsNotNull().ExecuteAsCollection<RegionCollection>();
0 голосов
/ 27 августа 2010

С коллекциями вы можете использовать OrderByAsc и OrderByDesc, но они оба позволяют только передавать строку в качестве параметра. И SubSonic.AggregateFunction.GroupBy, вероятно, не то, что вы хотите.

Попробуйте вместо этого:

var result = new RegionCollection().OrderByAsc(Region.Columns.RegionName).Load();
...