這是我如何可以返回合併兩個字符串列結果:合併不同類型的列值在LINQ查詢
context.DBSET.Select(e => e.STRING_PROPERTY + e.STRING_PROPERTY)...
我怎麼能在一個字符串結果合併e.STRING_PROPERTY + e.INTEGER_PROPERTY?
這是我如何可以返回合併兩個字符串列結果:合併不同類型的列值在LINQ查詢
context.DBSET.Select(e => e.STRING_PROPERTY + e.STRING_PROPERTY)...
我怎麼能在一個字符串結果合併e.STRING_PROPERTY + e.INTEGER_PROPERTY?
你必須把它轉換爲使用SqlFunctions.StringConvert字符串:
var results = context.DBSET
.Select(e => e.STRING_PROPERTY + SqlFunctions.StringConvert((double)e.INTEGER_PROPERTY));
幾個C#成員由LINQ的支持,以實體和LINQ到幕後的SQL。 Amoung這些,都是String.ToString()和DateTime.Now。你可以寫:
context.DBSET.Select(e => e.STRING_PROPERTY + e.INTEGER_PROPERY.ToString())...
由於@Reed指出的,SqlFunctions也將工作,將提供可以在查詢執行的操作的更一般的,但不可讀性集。
你會得到這個錯誤:LINQ to Entities不能識別方法'System.String ToString()'方法,並且這個方法不能被轉換成存儲表達式。 )) – user2265414
ToString在EF中不起作用 - 請參閱:http://stackoverflow.com/q/1066760/65358 –