J'utilise subsonic 2.2 avec .net 2.0 et j'ai une erreur quand j'ai inclus "Group By".Subsonique. Nom de colonne ambigu utilisant Group By
A l'origine, j'ai eu ce code, et cela a fonctionné parfaitement:
SqlQuery etResourceTitle = new Select(ResTitleOngoing.Columns.ResourceTitleID,
ResTitleOngoing.Columns.ResourceTitle,
VenVendor.Columns.Title,
ResTitleOngoingStatus.Columns.Status).From(Tables.ResTitleOngoing);
etResourceTitle.InnerJoin(ResTitleOngoingStatus.ResourceTitleIDColumn, ResTitleOngoing.ResourceTitleIDColumn);
etResourceTitle.LeftOuterJoin(VenVendor.VendorIDColumn, ResTitleOngoing.VendorIDColumn);
etResourceTitle.OrderAsc(ResTitleOngoing.Columns.ResourceTitle);
etResourceTitle.ExecuteDataSet();
Puis j'ajouté "Grouper par", donc ceci est mon code:
SqlQuery etResourceTitle = new Select(Aggregate.GroupBy(ResTitleOngoing.Columns.ResourceTitleID),
Aggregate.GroupBy(ResTitleOngoing.Columns.ResourceTitle),
Aggregate.GroupBy(VenVendor.Columns.Title),
Aggregate.GroupBy(ResTitleOngoingStatus.Columns.Status)).From(Tables.ResTitleOngoing);
etResourceTitle.InnerJoin(ResTitleOngoingStatus.ResourceTitleIDColumn, ResTitleOngoing.ResourceTitleIDColumn);
etResourceTitle.LeftOuterJoin(VenVendor.VendorIDColumn, ResTitleOngoing.VendorIDColumn);
etResourceTitle.OrderAsc(ResTitleOngoing.Columns.ResourceTitle);
etResourceTitle.ExecuteDataSet();
Je suis l'erreur: « Ambigu nom de la colonne 'ResourceTitleID'. "
Exécution etResourceTitle.BuildSqlStatement(); je suis arrivé:
SELECT ResourceTitleID AS 'GroupByOfResourceTitleID', ResourceTitle AS 'GroupByOfResourceTitle', Titre AS 'GroupByOfTitle', Statut AS 'GroupByOfStatus' DE [dbo] [RES_TitleOngoing] INNER JOIN [dbo].. [RES_TitleOngoingStatus] ON [dbo]. [RES_TitleOngoing]. [ID_table_ressource] = [dbo]. [RES_TitleOngoingStatus]. [ID_table_ressource] GAUCHE OUTER JOIN [dbo]. [VEN_Vendor] ON [dbo]. [RES_TitleOngoing]. [VendorID] = [dbo]. [VEN_Vendor]. [VendorID] GROUP BY ResourceTitleID, ResourceTitle, Titre, Statut ORDER BY ResourceTitle ASC
Donc, quelqu'un peut m'aider avec cette erreur.
Merci Alan
Merci Schlawiener. Cela a résolu mon problème. J'ai utilisé Aggregate.GroupBy (ResTitleOngoing.ResourceTitleIDColumn) Alan – ARR01