我想将异常记录到数据库中,以确保记录故障。我正在使用实体框架。
我应该设置一个封装的日志记录服务,该服务记录到不受实体框架管理的表中,还是应该创建一个名为Log的ef类?
我认为日志实际上不是代表我的应用程序部分的实体,而是代表元数据,这就是我要问的原因。
答案 0 :(得分:0)
为常规日志记录考虑一个单独的(有界)上下文。如果日志碰巧引用了顶级实体,则也可以为这些实体定义最少的实体定义。日志记录操作繁琐,因此,通过保留单独的DbContext,可以最大程度地缩短启动时间。
当涉及审计(即,持续进行变更跟踪)时,我通常使用一种直接挂接到DbContext事件中的模式,并根据何时更新,插入或删除实体来记录信息。