如何使用 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 empselect 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。