Frågan#1 Hur gör man en where-klausul i Nhibernate? Tex man ska hämta upp alla bokningar mellan ett visst datumintervall. Hur skulle man göra det på bäst sätt?
SSPiNMedlem sedan mars 20007 896 inlägg IList list = session.CreateQuery(typeof(YourObject)).Add(Expression.Between("dateField", date1, date2)).List();
SPiN skrev:
IList list = session.CreateQuery(typeof(YourObject)).Add(Expression.Between("dateField", date1, date2)).List();
Tror du menade fel här SPin det sättet du gör det på är Criterions.. dvs byt ut
session.CreateQuery till session.CreateCriteria.
Fungerar även med genercis
CreateCriteria<Person>();
Sedan har man alternativet Query också eller Linq
Ok, då är det så som jag misstänkte. Det jag skulle vilja komma ifrån är hårdkodningen av datakolumnen. Det finns inget annat sätt?
Lukaspojken skrev:
Ok, då är det så som jag misstänkte. Det jag skulle vilja komma ifrån är hårdkodningen av datakolumnen. Det finns inget annat sätt?
Criterion
var persons = session.CreateCriteria<Person>()
.Add(Expression.Between("PropertyName", date1, date2).List<Person>();
Linq
var persons = (from person in session.Linq<Person>
where person.PropertyName >= date1 && person.PropertyName <= date2
select Person).ToList();