的實體框架實體看起來是這樣的:我如何檢查對象的內容相等沒有對象參考平等
class ListItemEtlObject
{
public int ID { get; set; }
public string ProjectName { get; set; }
public string ProjectType { get; set; }
public string ProjectCode { get; set; }
public string ProjectDescription { get; set; }
public string JobNo { get; set; }
public string JobDescription { get; set; }
public bool Include { get; set; }
}
我拉項目從兩個不同的數據源到IEnumerable的名單。如何比較這些項目而不使用一堆if語句來檢查屬性值之間是否存在差異,然後在屬性值不匹配的情況下設置屬性值?這個想法是保持列表同步。另外,列表A具有設置的ID值,列表B不具有。我只是覺得有一種更好的方法如果你有源對象的控制的話,最好聲明的方式來支持基於價值的平等是實現IEquatable<T>
做到這一點比和一幫
if(objectA.ProjectName != objectB.ProjectName)
{
objectA.ProjectName = objectB.ProjectName;
}
你可以使用反射創建一個比較功能。檢查數據類型併爲此編寫一些比較代碼。它可能就夠好了。 – CodingBarfield