Serialize

class SerializeHelper {
  static public void ExportObject<T>( string key, T o ) {
    XmlSerializer serializer = new XmlSerializer( typeof( T ) );
    if ( ConfigurationManager.AppSettings[key] == null ) {
      throw new ArgumentException( key + " を key として出力ファイル名をアプリケーション構成ファイルに設定する必要があります。" );
    }

    using ( var writer = XmlWriter.Create( ConfigurationManager.AppSettings[key] ) ) {
      serializer.Serialize( writer, o );
      writer.Close();
    }
  }

  static public T ImportObject<T>( string key ) {
    XmlSerializer serializer = new XmlSerializer( typeof( T ) );
    if ( ConfigurationManager.AppSettings[key] == null ) {
      throw new ArgumentException( key + " を key として入力ファイル名をアプリケーション構成ファイルに設定する必要があります。" );
    }

    using( var reader = XmlReader.Create( ConfigurationManager.AppSettings[key] ) ) {
      return (T)serializer.Deserialize( reader );
    }
  }
}
<configuration>
  <appSettings>
    <add key="savefile" value ="nicodlgui.xml" />
  </appSettings>
</configuration>