我正在使用Entity Framework与WCF数据服务,并且我在我的数据库中有以下表格:
表格合同
- Id(整数) - 名称(varchar) - byUser(varchar) - isDeleted(位)
Entity Framework类
- Id(整数) - 名称(字符串) - byUser(字符串) - isDeleted(布尔值)
每当用户通过客户端应用程序插入/更新/删除合同时,我需要记录谁进行了操作。
因此,我创建了用于插入/更新/删除的存储过程,当执行插入/删除/更新时,将从客户端接收用户名。
问题是删除操作没有发送执行操作的用户:
表格合同
- Id(整数) - 名称(varchar) - byUser(varchar) - isDeleted(位)
Entity Framework类
- Id(整数) - 名称(字符串) - byUser(字符串) - isDeleted(布尔值)
每当用户通过客户端应用程序插入/更新/删除合同时,我需要记录谁进行了操作。
因此,我创建了用于插入/更新/删除的存储过程,当执行插入/删除/更新时,将从客户端接收用户名。
问题是删除操作没有发送执行操作的用户:
var ctx = Context;
var contractToDelete = ctx.Contracts.Where(c => c.ContractId == 1).First();
contractToDelete.ByUser = username;
ctx.DeleteObject(contractToDelete);
ctx.SaveChanges();
在服务器端,byUser参数始终为空。
问题:
1)如何确保将byUser参数发送到服务器?
2)是否有更好的处理此类场景的方法?(使用Entity Framework进行日志记录/身份验证/授权)
username
变量赋值? - Eranga