【问题标题】:How do I represent multiple DTOs for a domain object in .NET Web API?如何在 .NET Web API 中表示域对象的多个 DTO?
【发布时间】:2014-01-28 22:18:39
【问题描述】:

我正在编写一组 REST 服务,但遇到了一个问题,我确信有一个合适的解决方案/模式让我无法理解。

例如 /api/People/1 将返回 PersonDto 的序列化表示(它是由 Entity Framework 创建的 Person 域对象的简化表示。我正在使用 AutoMapper 来补充 PersonDto。

然而,第二个控制器(例如,/api/Classes/)将返回不同的复杂对象,其中可能包含一个或多个 Persons,但是我想以不同的方式表示每个人,而不是简单地使用现有的 PersonDto (例如,我可能需要更多或更少的字段)。

我需要定义一个 ClassPersonDto 吗?我不确定在这里做什么是“正确的”。

【问题讨论】:

标签: asp.net-web-api automapper dto


【解决方案1】:

如果“类”中传回的“人”模型与“PersonDto”模型不同,那么是的,创建一个不同的模型。您不需要这样做,但几乎总是让您的类(包括实体)尽可能具体。

【讨论】:

  • 听起来你的结论和我的一样。为了更详细地说明这种情况,我正在考虑一种情况,即不允许在第二个服务中发送有关 Person 的所有信息(比如一些私人信息,如社会安全号码或其他东西)。
猜你喜欢
  • 2023-04-02
  • 2022-08-23
  • 1970-01-01
  • 2015-07-09
  • 2021-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-06
相关资源
最近更新 更多