プロファイルを使用して設定などを保存するファイルバックアッププログラムを作成しています。現時点では、構造は次のようになっています。
MainForm
には、多数のProfileHandler
プロファイル オブジェクトを持つ があります。
プログラムに変更を加えると (リストへのファイルの追加、宛先パスの変更など)、設定は一時プロファイルに保存されます。ここまでは順調ですね...
しかし、プロファイルを保存したいとき、どちらに行けばよいか本当に決められません。現在、一時的なプロファイル オブジェクトを のAddProfile
メソッドに渡しますProfileHandler
。メソッドは次に、一時的なプロファイル オブジェクトのプロパティをパラメーターとして使用して、新しいプロファイル オブジェクトを作成します (ただし、List<string>
Addrange でコンテンツをコピーするだけの a は除きます)。
それは機能しますが、それは良いですか?
public bool AddProfile(Profile tempProfile)
{
if (tempProfile != null)
{
Profile profile = new Profile(tempProfile.Name, tempProfile.TargetPath);
profile.Filelist.Clear();
profile.Filelist.AddRange(tempProfile.Filelist);
_profiles.Add(profile);
}
return (tempProfile != null);
}
それを行うよりスマートな方法はありますか?Profile
どういうわけか、の単純なコピーであるオブジェクトの新しいインスタンスを作成する簡単な方法が必要だと感じていますtempProfile
。私の場合、Profile
クラスには 3 つのフィールドしかないので簡単ですが、大量のフィールドがある場合はどうなるでしょうか?
私はあまりにも不明確ではないことを願っています。私はこれに少し慣れていません。