私はあなたの最終結果として望むものは全くわからない、しかし....
次の2つの異なる種類のプロパティを比較している場合は、2つの辞書にプロパティ名と対応する値を予測でき。そして、その情報を使って、ある種の並べ替え/プロパティ値の違いを行います。
Guid newGuid = Guid.NewGuid();
var classA = new ClassA{Id = newGuid};
var classB = new ClassB{Id = newGuid};
PropertyInfo[] classAProperties = classA.GetType().GetProperties();
Dictionary<string, object> classAPropertyValue = classAProperties.ToDictionary(pName => pName.Name,
pValue =>
pValue.GetValue(classA, null));
PropertyInfo[] classBProperties = classB.GetType().GetProperties();
Dictionary<string, object> classBPropetyValue = classBProperties.ToDictionary(pName => pName.Name,
pValue =>
pValue.GetValue(classB, null));
internal class ClassB
{
public Guid Id { get; set; }
}
internal class ClassA
{
public Guid Id { get; set; }
}
classAPropertyValue
Count = 1
[0]: {[Id, d0093d33-a59b-4537-bde9-67db324cf7f6]}
classBPropetyValue
Count = 1
[0]: {[Id, d0093d33-a59b-4537-bde9-67db324cf7f6]}
ソートまたはフィルタリング?何で並べ替える? – dtb
実際にフィルタリングしています。 object.GuidId == list.GuidIdはオブジェクトを返します。 – Chris