我正在开发一个在线商店项目,我已经让管理员可以通过商店gui更新不同的表项(如项目,用户配置文件,订单等)。保存更改();用于保存更改。
我目前正试图弄清楚如何使这项工作:
表“items”中的条目已更新。
在表“条目”中的条目更新之前,旧条目的副本将保存到名为“history-items”的表中。
保存到“history-items”的副本最好有一个时间戳。
我该怎么做呢? (正如你可能会说的那样,我最近选择了视觉工作室,而且对所有事情都很陌生)
谢谢。
答案 0 :(得分:0)
至少有3种方法可以做到这一点:
如果您使用的是SQL Server 2008或更新版本,现在已内置功能,请参阅:http://msdn.microsoft.com/en-us/library/bb933994.aspx
如果您选择不使用它,那么最简单的解决方案是使用数据库触发器。
如果要在C#代码中执行此操作,则需要在保存之前读取原始值,并将这些原始值保存到历史记录表中。要阅读原始值,请参阅:How to get original values of an entity in Entity Framework?
如果可能,我会选择选项1.