2011-04-07 114 views

回答

1
var dates = from row in mytable 
      select DateTime.Parse(row.DATETEXT); 

有用於DateTime.Parse,允許您指定格式方法重載。

+0

但是DateTime.Parse會在客戶端執行,而不是在SQL數據庫中執行?我很好奇,如果有可能將查詢翻譯成tsql CAST並讓sql server執行轉換。 – 2011-04-07 10:36:27

+1

@Peter:你可以嘗試一個直接投射'(DataTime)row.DATETEXT',看看輸出了什麼SQL。 – 2011-04-07 10:48:26

+0

我試過這個,但是跟蹤顯示它執行下面的SQL語句:「SELECT [t0]。[DATETEXT] FROM [mytable] AS [t0]」。所以在客戶端進行鑄造。 – 2011-04-13 10:16:04

-1

其實,你不會需要那個。只是在使用字段值時將其解析爲數據時間。這裏是一個例子;

var query = from c in mytable 
      select c; 

然後當你使用它;

DateTime _value = (DateTime)query.SingleOrDefault().DATETEXT 

但是如果你想使用它那麼多。這裏是一個例子;

NorthwindEntities _e = new NorthwindEntities(); 

public void poo() { 

    var query = from e in _e.Products 
       select DateTime.Parse(e.DateText); 

} 
+0

我知道這是完全可能的,我更感興趣的是看看是否有任何轉換爲​​SQL的轉換爲TSQL CAST – 2011-04-13 10:17:49