public string CreateTables(TransferRequest connect) { ISourceServer source = SourceFactory.Instance[connect.SourceDB]; ITargetServer target = TargetFactory.Instance[connect.TargetDB]; source.Connect = connect.Connection; target.DatabaseInfo = source.CreateDatabaseInfo(); string sql = target.CreateSql(); string tempPath = DateTime.Now.ToString("yyyyMMdd"); string fileName = $"{connect.SourceDB}2{connect.TargetDB}_{DateTime.Now:HHmmss}.sql"; string dir = Path.Combine(AppConfiguration.Instance.SqlFilePath, tempPath); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } string path = Path.Combine(AppConfiguration.Instance.SqlFilePath, tempPath, fileName); using (StreamWriter sw = new StreamWriter(path)) { sw.Write(sql); } return(path); }
private static void RetrieveAndReportUpdates(IReportSink sink, ITargetServer targetServer) { var wmiNamespace = string.Format("\\\\{0}\\root\\CIMV2", targetServer.ServerName); var searcher = new ManagementObjectSearcher(wmiNamespace, "select * from Win32_QuickFixEngineering"); searcher.Options.UseAmendedQualifiers = true; searcher.Scope.Options.Locale = "MS_" + CultureInfo.CurrentCulture.LCID.ToString("X"); ManagementObjectCollection results = searcher.Get(); foreach (ManagementObject item in results) { sink.WriteLine("{0, -14}\t{1, -12}\t{2}", item["HotFixID"].ToString(), item["InstalledOn"].ToString(), item["Caption"].ToString()); } }