【发布时间】:2013-07-15 00:49:32
【问题描述】:
我正在使用 Entity Framework,想知道在数据库中保存 LastModified 日期字段以及用户详细信息 (Active Directory) 的最简单方法是什么。
我首先想到使用数据库触发器来更新字段,但我认为没有任何方法可以检索经过身份验证的用户以将他们识别到该记录。
【问题讨论】:
标签: c# asp.net sql-server entity-framework triggers
我正在使用 Entity Framework,想知道在数据库中保存 LastModified 日期字段以及用户详细信息 (Active Directory) 的最简单方法是什么。
我首先想到使用数据库触发器来更新字段,但我认为没有任何方法可以检索经过身份验证的用户以将他们识别到该记录。
【问题讨论】:
标签: c# asp.net sql-server entity-framework triggers
如果经过身份验证的用户实际上是在 SQL Server 中代表执行操作的用户,您实际上可以在触发器中使用内置函数 SYSTEM_USER 或 CURRENT_USER 获取当前用户。
例如:
UPDATE (appropriate table name)
SET LastModified = GETDATE(),
LastModifiedBy = SYSTEM_USER
WHERE (appropriate where clause)
【讨论】:
SYSTEM_USER 或 CURRENT_USER 我想实际从 AD 返回经过身份验证的用户,这与连接到 SQL 服务器的用户不同。