我的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设置上