如何使用 C# 在标签或文本框中显示此 linq 查询?
how to show this linq query in a label or textbox using c#?
var priv = from emp in re.Users
where emp.Name == struname
select new { emp.privilege };
我有经理、官员和申请人的特权
当我按下表单上的按钮时,我想在标签或文本框中显示 (priv) 我试过它不起作用,即使我将它转换为 label.Text= priv.ToString() 这样的字符串但它仍然没有向我显示经理、官员或申请人,我不知道为什么
你能帮我吗
提前致谢
您正在使用 select new { emp.privilege }
返回匿名类型。也许你的意思是 select emp
或 select emp.privilege
?
非常感谢大家的贡献
我修改了如下代码,它对我来说工作正常
var priv = (from emp in re.Users
where emp.Name == struname
select emp.privilege );
Label.Text = priv.FirstOrDefault().ToString();
@r.hamd 我看到了你的自动回答,我认为它虽然有效,但非常令人困惑:正如 Binkan 所说,你正在创建和对象,而你只需要 属性。
我推荐这个更简洁的版本:
Label.Text = re.Users.Single(u=> u.Name == struname).privilege;
当然你必须尝试捕捉这个,因为如果匹配失败你将无法访问权限 属性。
最后一点:属性应该以大写字母开头,因此您应该将权限重命名为 Privilege。
var priv = from emp in re.Users
where emp.Name == struname
select new { emp.privilege };
我有经理、官员和申请人的特权 当我按下表单上的按钮时,我想在标签或文本框中显示 (priv) 我试过它不起作用,即使我将它转换为 label.Text= priv.ToString() 这样的字符串但它仍然没有向我显示经理、官员或申请人,我不知道为什么 你能帮我吗 提前致谢
您正在使用 select new { emp.privilege }
返回匿名类型。也许你的意思是 select emp
或 select emp.privilege
?
非常感谢大家的贡献
我修改了如下代码,它对我来说工作正常
var priv = (from emp in re.Users
where emp.Name == struname
select emp.privilege );
Label.Text = priv.FirstOrDefault().ToString();
@r.hamd 我看到了你的自动回答,我认为它虽然有效,但非常令人困惑:正如 Binkan 所说,你正在创建和对象,而你只需要 属性。
我推荐这个更简洁的版本:
Label.Text = re.Users.Single(u=> u.Name == struname).privilege;
当然你必须尝试捕捉这个,因为如果匹配失败你将无法访问权限 属性。
最后一点:属性应该以大写字母开头,因此您应该将权限重命名为 Privilege。