誰かが問題を解決してくれることを願っていました。タイプの新しいクラスを作成しようとしています:
public class Foo<T>
メソッドの唯一の仕事は、別のクラスのプロパティを反復処理することです。さまざまな量のプロパティが定義された約 20 のクラスがあります。
public class Bar {
public int Id { get; set; }
public string Name { get; set; }
}
public class Shirt {
public string Color { get; set; }
public string Size { get; set; }
public string Brand { get; set; }
}
public class Pants {
public string Color { get; set; }
public string Waist { get; set; }
public string Length { get; set; }
public string Inseam { get; set; }
}
そして、パブリック クラス Foo のメソッドは次のとおりです。
public class Foo<T> {
public string FooMethod(T before, T after /* other variables? */) {
// compare before & after
}
}
同じ名前の各クラスは、Foo
のプライマリ メソッドに 2 回入りますが、プロパティ値は異なります。したがってBar
、前の Id & Nameは になる可能性がありますが1 & "Bar"
、Bar
後の Id & Nameは になる可能性があります2 & "BarBar"
。
ここから、 before & afterの各プロパティを比較するための他の操作が行われます。ただし、各クラスのプロパティの数はさまざまであり、1 つのメソッドのみを使用しようとしているため、ジレンマがあります。