在WCF数据服务中暴露DataTransferObjects而不是实体

本文关键字:实体 DataTransferObjects 暴露 WCF 数据 服务 | 更新日期: 2023-09-27 18:16:51

我目前正在尝试创建一个WCF数据服务来暴露大数据集。数据显示在DevExpress网格中,该网格内置了对服务器端分页、排序和查询的支持。如果我通过实体框架公开生成的实体,这绝对没问题。

然而,我想公开作为某种抽象的datattransfer对象。我在网上找不到一些信息来源。

也许你们中的一些人可以引导我走向正确的方向。

在WCF数据服务中暴露DataTransferObjects而不是实体

创建一个具有[Key]属性的Id属性的DTO类。创建一个继承ODataController的类,这是您的控制器。在上面添加一个名为Get()的方法:

    [EnableQuery]
    public virtual IQueryable<MyDto> Get()
    {
    }

在方法中返回您的数据与IQueryable。在此之后,在odata配置中调用DTO上的EntitySet