private void SaveToRemoteDesktop2008FormattedCsv() { var csvSerializer = new CsvConnectionsSerializerRemoteDesktop2008Format(); var dataProvider = new FileDataProvider(ConnectionFileName); var csvContent = csvSerializer.Serialize(ConnectionTreeModel); dataProvider.Save(csvContent); }
private static void SaveExportFile(string fileName, ConnectionsSaver.Format saveFormat, Save saveSecurity, ConnectionInfo exportTarget) { try { ISerializer <string> serializer; switch (saveFormat) { case ConnectionsSaver.Format.mRXML: serializer = new XmlConnectionsSerializer(); ((XmlConnectionsSerializer)serializer).SaveSecurity = saveSecurity; break; case ConnectionsSaver.Format.mRCSV: serializer = new CsvConnectionsSerializerMremotengFormat(); ((CsvConnectionsSerializerMremotengFormat)serializer).SaveSecurity = saveSecurity; break; case ConnectionsSaver.Format.vRDCSV: serializer = new CsvConnectionsSerializerRemoteDesktop2008Format(); ((CsvConnectionsSerializerRemoteDesktop2008Format)serializer).SaveSecurity = saveSecurity; break; default: throw new ArgumentOutOfRangeException(nameof(saveFormat), saveFormat, null); } var serializedData = serializer.Serialize(exportTarget); var fileDataProvider = new FileDataProvider(fileName); fileDataProvider.Save(serializedData); } catch (Exception ex) { Runtime.MessageCollector.AddExceptionStackTrace($"Export.SaveExportFile(\"{fileName}\") failed.", ex); } finally { Runtime.RemoteConnectionsSyncronizer?.Enable(); } }