2009-03-01 61 views
-2

ADO.NET EF不支持Math.Pow和Math.Log之類的東西,所以我想知道如何解決這個問題。我需要能夠使用ADO.NET EF的計算值使用ORDER BY。實體框架避開不支持的方法

+0

爲什麼你需要按電源或登錄功能? – 2009-03-01 04:23:20

回答

2

您可以使用實體SQL,但我不會推薦它

using System.Data.EntityClient; 

EntityConnection conn = new EntityConnection(myContext.Connection.ConnectionString); 
conn.Open(); 
EntityCommand cmd = conn.CreateCommand(); 
cmd.CommandText = @"Select SqlServer.Power(t.MyValue, 2) From MyEntities.MyTable As t"; 
var result = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess); 
result.Read(); 
var valuePower2 = result.GetValue(0); 
conn.Close(); 

要通過的,做動態訂單where子句中使用Dynamic Linq