0

假设我有 3 个实体:广告、用户和用户角色。并在 Web.Api 项目 GetAllAdverts 方法中。

public IEnumerable<Advert> GetAllAdverts()
    {
        return repository.GetAll<Advert>();

    } 

当我输入 url ../api/advert时,我得到包含所有广告的 JSON 和关于广告的数据,但我也得到关于用户和用户角色的所有数据。

例如,如何获取所有广告数据和仅 UserName 表单实体 User ?

这是通过创建 DTO 来完成的吗?

提前致谢 !

4

1 回答 1

1

使用 DTO 通常是个好主意。它需要更多的工作,但它可以让您完全控制并且抽象出特定数据层的特性。

在您的情况下,如果您真的只想使用UserNameDTO,因为不可能UserAdvert.

如果您看到除了其导航属性(如角色)之外的所有属性并不重要,User您还可以考虑(暂时)关闭存储库中上下文的延迟加载并Advert.User使用Include.

于 2012-12-12T18:37:55.450 回答