【问题标题】:Trigger stored procedure after SaveChanges in Entity Framework 1.0Entity Framework 1.0 中 SaveChanges 后触发存储过程
【发布时间】:2010-09-09 20:13:54
【问题描述】:

我在 SQL Server 2008 数据库中有一个审计表,它跟踪表中所做的所有更改。它做得很好,除了它无法捕获当前登录用户的用户名,因为我的连接字符串对所有连接都使用一个用户名。

这个应用程序是用 ASP.NET MVC 编写的,这就是我将用户名存储在连接字符串中的原因。

问题是:如何在调用 SaveChanges 函数后将用户名传递给该表?

【问题讨论】:

    标签: sql entity-framework sql-server-2008


    【解决方案1】:

    不要直接使用SaveChanges。创建自己的方法(可以是扩展方法),它将调用SaveChanges,然后运行您的附加代码。每次要保存更改时都使用此方法。

    不好的是你可以忘记调用你的方法并直接使用SaveChanges。要处理它,您必须重构代码并将ObjectContext 隐藏到某个包装器 - 存储库中。在存储库上公开Save 方法并在那里实现您的保存逻辑。

    【讨论】:

    • Ladislav,谢谢你的建议,下周我会试试看
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-13
    相关资源
    最近更新 更多