猿问

如何快速检查两个数据传输对象在C#中是否具有相同的属性?

我有这些数据传输对象:


public class Report 

{

    public int Id { get; set; }

    public int ProjectId { get; set; }

    //and so on for many, many properties.

}

我不想写


public bool areEqual(Report a, Report b)

{

    if (a.Id != b.Id) return false;

    if (a.ProjectId != b.ProjectId) return false;

    //Repeat ad nauseum

    return true;

}

有没有一种更快的方法来测试两个仅具有属性的对象是否具有相同的值(一种属性不需要每个属性一行代码或一个逻辑表达式?)


切换到结构不是一种选择。


扬帆大鱼
浏览 534回答 3
3回答
随时随地看视频慕课网APP
我要回答