今月 2 回、クラスのレコードを合計で作成する必要がありました。(2つの異なるクラス)そしてこれが再び起こります。クラスごとに合計ルーチンをコーディングすることなく、任意のクラスのリフレクションを使用してこれを行う簡単な方法があるはずです。
検討:
private class ThisAndThat
{
public int This { get; set; }
public float That { get; set; }
public double TheOther { get; set; }
public string Whatever { get; set; }
}
私のコードがゴロゴロするにつれて、これらの束を作成しますが、合計ルーチンも必要です。以下にリストされている AddToTotal() のようなもので、数値が追加され、文字列が無視されます。
List<ThisAndThat> _Discovered = new List<ThisAndThat>();
ThisAndThat _Total = new List<ThisAndThat>;
while( !Finished )
{
ThisAndThat CurrentOne = GetAnotherOne();
_Discovered.Add( CurrentOne );
AddToTotal( _Total, CurrentOne );
}
明らかに、このサンプル クラスの 3 つの数値プロパティは簡単にコーディングできますが、私は 60 の数値メンバーを持つものを作成しました。私はしばらく反省しながら手探りしましたが、ルーチンを思いつくことができませんでした。