有沒有辦法讓linq查詢返回日期時間的日期部分。我嘗試了所有我能找到的建議,所有這些建議都會在運行時產生錯誤。這是每個錯誤消息一起查詢的只是選擇部分(查詢其餘的偉大工程):從SQL Server CE日期時間使用linq-to-entities返回唯一日期
select new { d.id, d.date.Value.Date };
指定類型的成員「日期」不支持LINQ到實體。僅支持初始化程序,實體成員和實體導航屬性。
select new { d.id, date=EntityFunctions.TruncateTime(d.date) };
的功能不受SQL Server精簡認可。 [功能= TRUNCATETIME,數據類型(如果已知)=名稱]
select new { d.id, date=d.date.Value.Month + "/" + d.date.Value.Day };
無法轉換的類型 'System.Int32' 爲類型 'System.Object的'。 LINQ to Entities僅支持投射實體數據模型基元類型。
select new { d.id, date=d.date.Value.Month.ToString() + "/" + d.date.Value.Day.ToString() };
LINQ實體無法識別方法「System.String的ToString()」方法,和這種方法不能被翻譯成表達商店。
select new { d.id, date=String.Concat(d.date.Value.Month, "/")};
LINQ實體無法識別方法 'System.String CONCAT(System.Object的,System.Object的)' 方法,和這種方法不能被翻譯成表達商店。
感謝您的幫助!
SqlFunctions.DatePart():該函數只能從LINQ調用到實體。第二個返回日期和時間,所有時間都設置爲12:00:x.date.Value.Date – user2802450
This Works!感謝百萬MarcunJuraszek !!。Select(x => new {x.id,date = x.date.Value.ToShortDateString()}); – user2802450