List作DataList的数据源时,怎么设DataKeyField?

telescope 2011-05-09 10:39:56
我的DataList数据源不是来自数据库,而是来自List<RelationInfo>
我希望把RelationInfo.ID作为DataList的DataKeyField,应该怎么做?只在DataList的DataKeyField属性中写上“ID”,删除时它说:

序列不包含任何匹配元素
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidOperationException: 序列不包含任何匹配元素

源错误:


行 483: if (e.CommandName == "Delete")
行 484: {
行 485: RelationInfo rel2BDel = relations.Single(rel => rel.ID.ToString() == this.DtLstRelation.DataKeys[e.Item.ItemIndex]);
行 486: relations.Remove(rel2BDel);


我认为问题出在DataKeyField设置上
...全文
234 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
小童 2011-05-09
  • 打赏
  • 举报
回复
DataList数据源选ObjectDataSource 然后找你的返回List<Object>的方法,

在视图界面手动绑定,
子夜__ 2011-05-09
  • 打赏
  • 举报
回复
List<T>
T.ID

可以在某一列帮上这个 隐藏列也可以

获取的时候用findcontrol

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧