如何在Linq中将数字转换为字符串,而不拉入本地对象
本文关键字:对象 字符串 Linq 转换 数字 | 更新日期: 2023-09-27 18:19:45
我有一个查询,它将数据库中的分层数据提取到结构对象中:
class HierarchicalData {
public int ID {get; set;}
public string Description {get; set;}
public IEnumerable<HierarchicalData> Children {get; set;}
}
我对如何查询数据很熟悉。当我的一个层次结构元素需要为Description
使用一个数字时,问题就来了。我不能使用.ToString()
,因为Linq-to-Entities没有SQL转换。我不想把所有的数据都拉到内存中,这样我就可以调用.ToString()
——这将是非常低效的。
我只想要某种表达式,它可以在数据库端将数字转换为字符串。
您可以在Linq中使用SqlFunctions.StringConvert(double)
到实体
- MSDN示例:http://msdn.microsoft.com/en-us/library/dd456858.aspx
- SqlFunctions引用:http://msdn.microsoft.com/en-us/library/system.data.objects.sqlclient.sqlfunctions.aspx