[英]Convert GUID to string Entity Framework
冒着问一个重复问题的风险,我似乎无法解决这个问题。 我想做的事有很多例子,但语法并不完全相同,没有任何效果。 我正在自学Linq。 该查询从SQL Server获取ID列表。 如果没有“ ToString()”,它将显示“无法将GUID转换为string []”。 请提前告知并感谢。
public string[] GetAllRoleIDs(string param)
{
using (DBEntities de = new DBEntities())
{
string[] roleset = (from p in de.MySQLView
where p.anotherfield == param
select p.RoleID.ToString()).Distinct().ToArray();
return roleset;
}
}
您希望AsEnumerable()
强制ToString()
调用在本地求值,而不是作为EF查询的一部分。 例如:
using (DBEntities de = new DBEntities())
{
string[] roleset = de.MySQLView
.Where(p => p.anotherfield == param)
.Select(p => p.RoleID)
.Distinct()
.AsEnumerable()
.Select(guid => guid.ToString())
.ToArray();
return roleset;
}
(我已经将它从查询表达式转换为使用点表示法,只是因为两者之间的混合和匹配很麻烦,并且您只有一个where
和select
。当然,您可以使用查询表达式。 )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.