简单的计算性质和DTO

本文关键字:DTO 计算 简单 | 更新日期: 2023-09-27 18:03:21

我有一个WCF服务,它公开了它与dto的接口。我有一个实体类MyClass,它有两个属性SimpleProperty1SimpleProperty2。在这个类中有一个名为CalculatedProperty1的计算属性,它使用上述两个属性来计算其值。我有一个MyClassDTO dto类,只有两个简单的属性。在正在修改MyClassDTO对象的UI中,我希望用户能够动态地看到CalculatedProperty的值。然而,根据我的理解,dto不应该嵌入任何逻辑。在这样一个简单的场景中,在web服务中实现一个函数来获取属性的计算值似乎有点浪费。我该如何着手完成这件事呢?做这件事的标准方法是什么?我看到从WCF服务生成的类被定义为部分类。它能处理这种情况吗?

简单的计算性质和DTO

您可以使用扩展方法来显示计算的属性

 public class MyClassDTO
{
    public string P1 { get; set; }
    public string P2 { get; set; }
}
public static class MyClassDtoExtension
{
    public static string ToCalculatedProperty(this MyClassDTO obj)
    {
        return obj.P1 + obj.P2;
    }
}

//用法

        var d = new MyClassDTO(){P1 = "1",P2 = "2"};
        d.ToCalculatedProperty();