2015-03-19 114 views
0

嗨我想寫一個SQL查詢到LINQ查詢。我的SQL查詢是這樣的:重寫SQL到LINQ查詢

select BookingArrivedEnquiredTime 
from BookingArriveds 
where BookingArrivedEnquiredDateTime='2015-02-17 00:00:00.000' 
order by CAST(('01/01/2000 ' + BookingArrivedEnquiredTime) AS DATETIME) 

我該如何在LINQ中編寫這個查詢?

回答

0

你可以嘗試只是解析字符串日期時間:

var res = from item in BookingArrivedEnquiredTime.BookingArriveds 
      where item.BookingArrivedEnquiredDateTime == DateTime.Parse("2015-02-17 00:00:00.000") 
      orderby DateTime.Parse("01/01/2000 " + item.ToString()) 
      select item; 
+0

我想你的查詢,但它給這個錯誤----------「> LINQ到實體無法識別方法」 System.DateTime Parse(System.String)'方法,並且此方法不能被轉換爲存儲表達式。而query是----------> var qr = from db.BookingArriveds中的item其中item.BookingArrivedEnquiredDateTime == Startdate orderby DateTime.Parse(「01/01/2000」+ item.BookingArrivedEnquiredTime)select item; – 2015-03-19 10:44:14

+0

是的,這可能是因爲這只是一個例子,你沒有提供你的數據表結構,也沒有樣例數據,所以恐怕這就是我現在可以提出的所有建議 – 2015-03-19 10:51:08

+0

嗨,我的表,我有一列BookingArrivedEnquiredTime與數據類型爲varchar和價值觀都是這樣的上午07點01 上午8時51分 上午05時45分 上午9時35分 10:10 上午10:09 11: 03 AM 12:13 PM 11:53 AM 11:27 AM 11:24 AM – 2015-03-19 11:16:11