Med SubSonic 2 ur kartongen kan du inte.
Som sagt, du har följande alternativ:
Utöka SubSonic
Om du redan är bekant med SubSonic kan du överväga att lägga till flerkolumnskopplingar till SubSonic själv.
Använd vyer, lagrade procedurer, tabellfunktioner
Om du inte vill bråka med SubSonics-kod, använd vyer, lagrade procedurer och/eller tabellfunktioner inom sql-servern. SubSonic gör det enkelt att komma åt data från vyer och lagrade procedurer.
Använd en InlineQuery
InlineQuery låter dig köra valfri sql - om det är ett alternativ att ha bare sql i din kod.
Ful lösning med InlineQuery
Om du absolut vill skapa din fråga med SubSonic kan du prova detta:
SqlQuery q = DB.Select()
.From<TableA>()
.CrossJoin<TableB>()
.Where(TableA.YearColumn).IsEqualTo(0)
.And(TableA.MonthColumn).IsEqualTo(0)
.And(TableA.UseridColumn).IsEqualTo(0);
Bygg SQL-satsen och ersätt parameternamnen:
string s = q.BuildSqlStatement();
s = s.Replace(q.Constraints[0].ParameterName, TableB.YearColumn.QualifiedName);
s = s.Replace(q.Constraints[1].ParameterName, TableB.MonthColumn.QualifiedName);
s = s.Replace(q.Constraints[2].ParameterName, TableB.UserIdColumn.QualifiedName);
Använd sedan s med en InlineQuery.