FineUI 官方论坛
标题:
请教关于对Attach重写的问题
[打印本页]
作者:
wck173168
时间:
2017-2-24 13:34
标题:
请教关于对Attach重写的问题
本帖最后由 wck173168 于 2017-2-24 13:38 编辑
最近在学习文章
AppBox升级进行时 - Attach陷阱(Entity Framework)
中学习了以下写法
protected T Attach<T>(int keyID) where T : class, IKeyID, new()
{
T t = DB.Set<T>().Local.Where(x => x.ID == keyID).FirstOrDefault();
if (t == null)
{
t = new T { ID = keyID };
DB.Set<T>().Attach(t);
}
return t;
}
复制代码
其中DB的定义为
public static AppBoxContext DB...
如果我还链接了别的数据库定义了别的DbContext
例如
public static OtherContext
OtherDB
...
要调用Attach,我是这么写的
protected T Attach<T>(int keyID) where T : class, IKeyID, new()
{
T t = OtherDB.Set<T>().Local.Where(x => x.ID == keyID).FirstOrDefault();
if (t == null)
{
t = new T { ID = keyID };
OtherDB.Set<T>().Attach(t);
}
return t;
}
复制代码
请问
能否有封装的写法,让我调用Attach<T>(int keyID)的时候 能够选定数据库实体DbContext?
谢谢各位大神!
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4