首页 新闻 会员 周边 捐助

entity framework 单列模式开发的时候,如何取消异常带来的不能操作?

0
悬赏园豆:40 [待解决问题]

比如代码是

try

删除

}catch

{

记录已被引用。

}

 

 

我的作法是用try来删除实体的,如果记录被引用了,删除出错,还回“记录被引用”,我是有意这样子作的。

但是这样一旦出了问题,接下来其它的所有添加,修改,删除都会报错,原因是之前的记录还未作删除,但又真的删除不了。我能不能跳过这个错误?其它的操作能正常使用

wunaigong的主页 wunaigong | 初学一级 | 园豆:4
提问于:2012-02-24 08:36
< >
分享
所有回答(3)
0

表达不清晰啊,发错误日志。

az235 | 园豆:8483 (大侠五级) | 2012-02-24 08:49
0

建议把具体的错误信息写出来

dudu | 园豆:30778 (高人七级) | 2012-02-24 10:10
0

EF在单例模式及C/S方式开发时,操作数据对象以后如果发生异常,要做善后工作。

如:删除时只是在内存是把实体做了一个删除标记,修改时除了值变化以外还标记实体对象的状态为Modified。如果操作异常的话,应该要撤消所做的修改或删除。做法如下:

try{

删除或修改

}catch

{

_DBContext.Refresh(RefreshMode.StoreWins, entity);

}

Akin's BLOG | 园豆:402 (菜鸟二级) | 2012-10-08 17:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册