public class Models<T> : CollectionBase, IEnumerable<T>, IEnumerable where T : IModel
{
//[DataMember]
private List<T> modelsdeleted; public Models()
{
this.modelsdeleted = new List<T>();
} public void AcceptChanges()
{
for (int i = 0; i < base.List.Count; i++)
{
this[i].AcceptChanges();
}
this.DeletedList.Clear();
} public void Add(T model)
{
model.ModelState = Constant.State.Added;
base.List.Add(model);
} public void Clear()
{
this.modelsdeleted.Clear();
base.List.Clear();
base.Clear();
} //public IEnumerator<T> GetEnumerator()
//{
// <GetEnumerator>d__2<T> d__ = new <GetEnumerator>d__2<T>(0);
// d__.<>4__this = (Models<T>) this;
// return d__;
//} public bool Haschange()
{
return ((this.DeletedList.Count > 0) || (this.Where<T>(delegate (T model) {
return (model.ModelState != Constant.State.Unchanged);
}).Count<T>() > 0));
} public void Insert(int index, T model)
{
model.ModelState = Constant.State.Added;
base.List.Insert(index, model);
} protected override void OnRemove(int index, object value)
{
base.OnRemove(index, value);
} public void Remove(T model)
{
base.List.Remove(model);
} public IList<T> DeletedList
{
get
{
return this.modelsdeleted;
}
} public T this[int Index]
{
get
{
return (T) base.List[Index];
}
set
{
base.List[Index] = value;
}
}
}错误说是:“ServerOnline.myCls.OLModel.Models<T>”不实现接口成员“System.Collections.Generic.IEnumerable<T>.GetEnumerator()”。“System.Collections.CollectionBase.GetEnumerator()”无法实现“System.Collections.Generic.IEnumerable<T>.GetEnumerator()”,因为它没有匹配的返回类型“System.Collections.Generic.IEnumerator<T>”。
要怎么修改啊?
{
throw new NotImplementedException();
} #endregion #region IEnumerable 成员 System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
throw new NotImplementedException();
} #endregion
直接把注释的那部分先换成:
IEnumerator IEnumerable.GetEnumerator()
{
throw new NotImplementedException();
}