2009-03-02 6 views
0

날짜를 비교하는 올바른 eSQL 구문은 무엇입니까?엔티티 SQL의 날짜 비교

등가 LINQ - 투 - 엔티티 표현은 다음과 같이 보일 것입니다 :

var lastYearsShipments = from p in MyDataServiceContext.Products 
         where p.ShipDate.Value.Year == DateTime.Now.Year - 1 
         select p; 

답변

2

를 그들은 그것이 그래서 여기 acceptable to answer your own question의가는 말 ...

var predicate = string.Format(
    "Year(it.ShipDate) == Year(cast('{0}' as System.DateTime)) -1", 
    System.DateTime.Now); 

var lastYearsShipments = 
    myQuery.Products.Where(predicate); // myQuery is type ObjectQuery<T> 

항목 : msdn documentation

0
string datetimeFormatter = "yyyy-MM-dd HH:mm"; 

var predicate = string.Format("Year(it.ShipDate) == Year(DATETIME'{0}')) -1", System.DateTime.Now.ToString(datetimeFormatter)); 

var lastYearsShipments = myQuery.Products.Where(predicate);