var x = from y in db.table
where y.member_id == 1
select new { y.member_id };
此语句应仅返回一条记录。 &安培;我想检索语句以字符串格式返回的值。
像
string m = x;
我该怎么做?!
答案 0 :(得分:3)
var x = (from y in db.table
where y.member_id == 1
select new { y.member_id }).FirstOrDefault();
如果用户不存在,它将返回null
。
如果new { }
应该是一个字符串,你可能想要摆脱y.member_id
部分。
var x = (from y in db.table
where y.member_id == 1
select y.member_id).FirstOrDefault();
答案 1 :(得分:0)
您可以使用:
string m = db.table.where(member=>member.member_id == 1).FirstOrDefault().member_id.ToString();
,前提是'table'是POCO,或者它可以支持属性访问。
答案 2 :(得分:0)
您可以使用take 1
将返回的元素数量限制为一个,但仍然可以从查询中获取一个集合(您必须使用例如{{1)来提取第一个元素}})。
但为什么不使用
.First()
找到满足谓词的元素?
答案 3 :(得分:0)
如果您确定该语句应仅返回单个结果,而不是使用.First/.FirstOrDefault
,则应使用.Single/.SingleOrDefault
,以便您有效地断言只有一个结果。如果查询返回多个项目,则会出现错误情况。这可能很有用。