clone - c# list ディープコピー - オブジェクトのディープクローニング

C# DeepCopy 高速 / c# / .net

みたいなことをしたいですね。

MyObject myObj = GetMyObj(); //新しいオブジェクトを作成して入力します
MyObject newObj = myObj.Clone();

poke



Answer #1
public static void CopyTo( this object S, object T )
{
    foreach( var pS in S.GetType().GetProperties() )
    {
        foreach( var pT in T.GetType().GetProperties() )
        {
            if( pT.Name != pS.Name ) continue;
            ( pT.GetSetMethod() ).Invoke( T, new object[] 
            { pS.GetGetMethod().Invoke( S, null ) } );
        }
    };
}