我已尝试使用以下查询从linq获取数据库中的列表,但出现以下错误
无法创建类型' System.Object'的常量值。在此上下文中仅支持原始类型或枚举类型。
我不确定导致错误的原因。
List<a> a = await (from p in new db_Context().Items
where p.sub_Var.Name.Equals((sender as Button).Text)
orderby p.Name
select p).ToListAsync();
答案 0 :(得分:1)
使用 == 代替Equals
List<a> a = await (from p in new db_Context().Items
where p.sub_Var.Name == ((sender as Button).Text)
orderby p.Name
select p).ToListAsync();
修改强>
如果你得到null,将按钮文本设置为变量并检查,
string buttonname = (sender as Button).Text;
List<a> a = await (from p in new db_Context().Items
where p.sub_Var.Name == buttonname
orderby p.Name
select p).ToListAsync();
答案 1 :(得分:0)
string name = (sender as Button).Text;
List<a> a = await (from p in new db_Context().Items
where p.sub_Var.Name == name
orderby p.Name
select p).ToListAsync();