我已經研究了這個問題到死。每個人和他們的兄弟都想知道如何將int或decimal轉換爲字符串,但是我找不到任何與EF做相反的例子。LINQ to Entities字符串到十進制的一列
我的數據源在varchar類型的數據庫中有一個order total_amt列。原因是因爲源數據被加密。解密器的確如此。我可以重寫那個解密到一個臨時表,然後將這些結果插入到一個正確類型的表中,但是現在和在數據庫更新期間,這需要分配更多的工作,因爲我們展開了應用程序。
我很想能夠投出的列,但我不知道如何與Linq和EF做到這一點。
public ActionResult Orders_Read([DataSourceRequest]DataSourceRequest request) {
var db = new Ecommerce_DecryptedEntities();
var orders = from s in db.Orders
where s.Order_Complete == true
select new {
s.Order_Id,
s.MySEL_Name,
s.MySEL_EMail,
s.MySEL_Bus_Name,
s.Total_Amt,
s.Order_Complete_DateTime
};
DataSourceResult result = orders.ToDataSourceResult(request);
return Json(result, JsonRequestBehavior.AllowGet);
}
注意:結果需要是iQueryable。我真的不想ToList,因爲它會從數據庫中提取所有數據。這是綁定到一個Telerik KendoUI網格,該網格正在傳遞分頁,排序和其他參數(注意它正在使用傳入的請求將其轉換爲KendoUI的ToDataSourceResult,其中包含上述提及的分頁,排序等數據。
[問題與LINQ的轉換INT爲字符串的實體(可能重複http://stackoverflow.com/questions/1066760/problem-with-converting-int -to-string-in-linq-to-entities) – Win 2013-03-05 16:15:10
Total_Amt是否需要在某段時間內是int或小數?你多久使用一次? – 2013-03-05 16:16:32
@Win,這是一個否定的,因爲我明確表示我想做相反的事情,將字符串轉換爲另一種格式,在這種情況下是十進制。 – 2013-03-05 16:22:17