在 LINQ to Entities 中将整数转换为字符串
在 LINQ to Entities 中,尝试直接将整数赋值给字符串属性会导致错误,因为不支持这种转换。当处理查询时,该查询选择具有整数和字符串属性混合的对象,就会出现此问题。
一种可能的解决方案是使用 ToString() 方法在将整数赋值给属性之前将其转换为字符串。但是,这种方法在使用 LINQ to Entities 时也可能导致异常。
在 LINQ to Entities 中将整数转换为字符串的更可靠的解决方案是使用 SqlFunctions.StringConvert 方法。此方法允许您使用指定的格式将整数转换为字符串。通过在使用 SqlFunctions.StringConvert 之前将整数转换为双精度或十进制数,您可以成功地将其转换为字符串。
使用 SqlFunctions.StringConvert 的更正后的代码如下:
<code>var items = from c in contacts select new ListItem { Value = SqlFunctions.StringConvert((double)c.ContactId).Trim(), Text = c.Name };</code>
以上是如何将整数安全地转换为LINQ中的字符串转换为实体?的详细内容。更多信息请关注PHP中文网其他相关文章!