![]() |
1
13
处理上下文如何。 SavingChanges ? |
![]() |
2
13
我发现附加到连接的StateChanged事件并观察从not open到open的更改是最容易的。然后我调用设置上下文的proc,它每次都工作,即使EF决定重置连接。
|
![]() |
3
10
最后,在克雷格的帮助下,这里是一个概念证明。它需要更多的测试,但乍一看它正在工作。 第一:我创建了两个表,一个用于数据,一个用于日志。
第二:为insert创建触发器。
您还应该为update创建一个触发器,这将稍微复杂一些,因为它需要检查每个字段是否有更改的内容。 日志表和触发器应该扩展以存储创建/更改的表和字段,但我希望您能理解。 第三:创建一个存储过程,将用户id填充到SQL上下文信息中。
我们已经准备好了SQL端。C部分来了。 创建项目并将EDM添加到项目中。EDM应包含datastuff表(或需要监视更改的表)和SP。 现在对entity对象执行一些操作(例如添加一个新的datastuff对象)并钩住SavingChanges事件。
在SavingChanges中,我们注入代码来设置连接的上下文信息。
|
![]() |
4
3
您是否尝试过将存储过程添加到实体模型中? |
![]() |
5
2
只需使用DbContext或ObjectContext强制执行SET-CONTEXT_-INFO即可:
FileMoverContext继承自DbContext并具有SetSessionContextInfo方法。 下面是我的SetSessionContextInfo(…)的外观:
现在,您只需设置一个数据库触发器,它可以访问CONTEXT_INFO(),并使用它设置一个数据库字段。 |
![]() |
6
2
我们用不同的方法解决了这个问题。
在代码中,必须使用继承的类。 |
![]() |
7
0
请在下面查找完整类的参考:
|
![]() |
8
0
这就是我以前发现的 here 我修改了它,因为它不起作用
|
![]() |
Abdullah Chaudhry · json文件上的文件旋转和删除 1 年前 |
![]() |
Max S · 如何从CMD读取日志的所有输出 7 年前 |
![]() |
Ivan Denchev · Apache-过去一小时的日志 7 年前 |
![]() |
ninja.coder · Log4j中的字符串串联性能 7 年前 |
![]() |
Rich · 如何记录日志。是否与操作员一起调试? 7 年前 |