繁体   English   中英

如何通过Web API跟踪断开连接的实体

[英]How to track disconnected entities over Web API

假设我有一个应用程序允许客户通过Web API将产品添加/更新到我的数据库中。 我有像这样的轻量级DTO:

public class ProductDTO
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
}

假设我想将更改存储到Audit表中,跟踪实体的行业惯例是什么。 例如,显示旧价格与新价格

在我的WebAPI控制器中收到DTO后,是否必须从数据库中查询当前记录,进行对象比较并保存差异? - 这是唯一的方法吗?

Web API具有内置的日志记录和跟踪功能这是一个很好的演练

这是使用log4netTraceWriter实现,或者如果NLog更像是你的茶,那么有一个NLog跟踪记录器 ,这是使用NLog的另一个例子

如果要比较更改,则需要手动设置。 您可以轻松访问JSON请求。 它只是一个问题或在旧对象和新对象之间运行差异。 其中一个例子是StackOverflow。 我会记录请求标头,请求主体,端点地址,API密钥,旧对象(请求)和差异。 然后,您可以将比较输出为差异列表,或者进行并排比较(如您在Git / SVN / TFS合并中所见)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM