Linq to entities, DateTime-Berechnungen

01/07/2010 - 10:36 von Joachim Fuchs | Report spam
Hallo,

wie kann mann denn mit LTE zwei DateTime-Werte vergleichen, ohne die
Zeitinformation zu berücksichtigen (also nur das Datum als Kriterium)? Die
Eigenschaften bzw. Methoden von DateTime kann man offenbar nicht benutzen,
da sie zur Laufzeit nicht in eine Query-Expression umgesetzt werden können.

Danke und viele Grüße
Joachim


Dr. Joachim Fuchs - Autor - Dozent - Softwarearchitekt
http://www.fuechse-online.de/beruflich/index.html
 

Lesen sie die antworten

#1 FrankDzaebel
01/07/2010 - 11:12 | Warnen spam
Hallo Joachim,

wie kann mann denn mit LTE zwei DateTime-Werte vergleichen, ohne die
Zeitinformation zu berücksichtigen (also nur das Datum als Kriterium)?



Der Date-Member von DateTime wird ja bei der internen SQL-Umsetzung
in Linq to Entities nicht unterstützt.

[Nerd Words: EF error: 'Date' is not supported in LINQ to Entities.]
http://nerdwords.blogspot.com/2009/...-linq.html

Deswegen behilft man sich normal mit Konstruktionen wie:

dc = new AdventureWorksLT2008Entities();
DateTime dat1 = dc.Customers.First().ModifiedDate.Date;
var res from c in dc.Customers
where c.ModifiedDate <= dat1
select c;


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen