我只是使用一个简单的 LINQ 查询,该查询具有 group by 子句并尝试将其结果集绑定到 GridView。我的 LINQ 查询看起来像
var expData = from c in WebDB.TransTable
group c by c.enterdate into g
select g;
ASP.NET 页面上的网格视图
<asp:GridView ID="GridView1" AutoGenerateColumns="true" runat="server" DataKeyField="Key" />
但是收到错误:
在所选数据源上找不到名称为"Key"的字段或属性。
有人可以帮我吗?
没有一个答案是有帮助的
expData
是一个string
,因为您已将 LINQ 查询放在引号内。
var expData = "from c in WebDB.TransTable
group c by c.enterdate into g
select g;"
System.String
没有一个名为Key
的属性,因此错误。
如果删除引号,它应该都可以正常工作。
编辑 这将忽略 linq 语句中的 "
查看 asp.net GridView 上的属性(aspx 代码):DataKeyField=" 指向 linq 查询中不存在的列名
<asp:GridView AutoGenerateColumns="true" DataKeyField="Key"/>
我也有你的问题,我是这样写的。我希望这对你有用:
var expData = from c in WebDB.TransTable
group c by c.enterdate into g
select new {EnterDate = g.Key};