加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
ObjectContextBaseCore.cs 2.30 KB
一键复制 编辑 原始数据 按行查看 历史
鄞ye 提交于 2015-09-08 11:35 . 修改更新

using System;
using System.Collections.Generic;
using System.Data.Objects;
using System.Linq;
namespace LinqBll
{
public class ObjectContextBaseCore<T> : IObjectSetCore<T>
where T : class,new()
{
#region Members
System.Data.Objects.ObjectContext Context { get; set; }
public ObjectContextBaseCore(ObjectContext context)
{
if (context != null)
Context = context;
throw new ArgumentNullException();
}
#endregion
public System.Data.Objects.ObjectSet<T> ObjectSet
{
get { return this.Context.CreateObjectSet<T>(); }
}
public void CreateList(IEnumerable<T> ts)
{
foreach (var i in ts)
this.Create(i);
}
public void Create(T t)
{
this.Attach(t);
}
public void Delete(T t)
{
dynamic temp = t;
temp.Flag = false;
}
public void Update(T t)
{
this.Attach(t);
}
public System.Collections.Generic.IList<T> Select(int start, int limit)
{
return this.ObjectSet.Skip(start).Take(limit).ToList();
}
public void SaveChanges()
{
this.Context.SaveChanges();
}
public void Dispose()
{
this.Context.Dispose();
}
protected void Attach(T t)
{
this.ObjectSet.Attach(t);
this.Context.Refresh(System.Data.Objects.RefreshMode.ClientWins, t);
}
public void Delete(IEnumerable<T> ts)
{
foreach (var i in ts)
Delete(i);
}
public void Update(IEnumerable<T> ts)
{
foreach (var i in ts)
Update(i);
}
public T Query(Func<T, bool> func)
{
return ObjectSet.FirstOrDefault(func);
}
public IQueryable<T> QueryList(Func<T, bool> func)
{
throw new NotImplementedException();
}
public IQueryable<T> QueryList(Func<T, int, bool> func)
{
throw new NotImplementedException();
}
public IQueryable<T> QueryList()
{
throw new NotImplementedException();
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化