SubSonic OpenExpression/Closexpression
-
20-09-2019 - |
Frage
Hey alle zusammen! Ich versuche eine Abfrage zu konstruieren, die so etwas ist:
Wobei column = "value" und column2 = "value" und (spalte3 = "value" oder column4 = "value"))
Ich habe diesen Code:
return new Select()
.From(LessonChallenge.Schema)
.Where(LessonChallenge.ChallengerStatusColumn).IsEqualTo("Finished")
.And(LessonChallenge.ChallengeeStatusColumn).IsEqualTo("Finished")
.OpenExpression()
.And(LessonChallenge.ChallengerAccountIDColumn).IsEqualTo(accountID)
.Or(LessonChallenge.ChallengeeAccountIDColumn).IsEqualTo(accountID)
.CloseExpression()
.OrderDesc("dateCompleted")
.Paged(1, numItems)
.ExecuteAsCollection<LessonChallengeCollection>();
Das Problem ist, dass Subsonic die und nach der Klammer hinzufügt. Wie kann ich das negieren?
Lösung
Sie sollten in der Lage sein:
return new Select()
.From(LessonChallenge.Schema)
.Where(LessonChallenge.ChallengerStatusColumn).IsEqualTo("Finished")
.And(LessonChallenge.ChallengeeStatusColumn).IsEqualTo("Finished")
.AndExpression(LessonChallenge.ChallengerAccountIDColumn).IsEqualTo(accountID)
.Or(LessonChallenge.ChallengeeAccountIDColumn).IsEqualTo(accountID)
.OrderDesc("dateCompleted")
.Paged(1, numItems)
.ExecuteAsCollection<LessonChallengeCollection>();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow