public void RunCreation() { foreach (String dataBaseNameToRunFor in DataBaseNamesToRunFor) { DbServer3Connection DataAccess = new DbServer3Connection() {Catalog = dataBaseNameToRunFor, UserName = "******", Password = "******" }; String TableNamingConventionFileName = $"D:\\DEV\\Share\\_DbEntities.Generator\\{dataBaseNameToRunFor}TableNamingConventions.txt"; String NewContent = CreateNewContent(DataAccess, dataBaseNameToRunFor); FileInfo oldFileInfo = new FileInfo(TableNamingConventionFileName); if (oldFileInfo.Exists) { StreamReader Reader = oldFileInfo.OpenText(); String OldContent = Reader.ReadToEnd(); Reader.Close(); if (String.Compare(OldContent, NewContent) == 0) continue; oldFileInfo.Delete(); } FileInfo newFileInfo = new FileInfo(TableNamingConventionFileName); StreamWriter Writer = newFileInfo.CreateText(); Writer.Write(NewContent); Writer.Close(); } }
private String CreateNewContent(DbServer3Connection DataAccess, String DataBaseName) { DataTable DefinitionsDataTable = DataAccess.ExecuteCommand( "Select * from AutoGenerationForData order " + "by TABLE_TYPE, Table_Name"); List<String> Lines = new List<string>(); foreach (DataRow row in DefinitionsDataTable.Rows) { String ClassName = row["TableClassName"].ToString(); String RowName = row["RowClassName"].ToString(); String TableName = row["TABLE_NAME"].ToString() ; if (String.Compare(ClassName, RowName) == 0) { MessageBox.Show($"Datenbank \"{DataBaseName}\"\r\n" + $"{ClassName} = {RowName} " + $" \r\nbei {TableName}"); } List<String> Entries = new List<string>(); Entries.Add(row["TABLE_NAME"].ToString()); Entries.Add(row["RowClassName"].ToString()); Entries.Add(row["TableClassName"].ToString()); Lines.Add(String.Join("\t", Entries)); } return String.Join("\r\n", Lines); }