[TestMethod] public void TestCatalogs() { IMetadataService metadata = new MetadataService(); metadata .UseDatabaseProvider(DatabaseProvider.SQLServer) .UseConnectionString("Data Source=ZHICHKIN;Initial Catalog=accounting_3_0_72_72_demo;Integrated Security=True"); // accounting_3_0_72_72_demo InfoBase infoBase = metadata.LoadInfoBase(); List <string> delete; List <string> insert; using (StreamWriter stream = new StreamWriter(@"C:\temp\TestCatalogs.txt", false, Encoding.UTF8)) { int count = 0; foreach (var kvp in infoBase.Catalogs) { //if (kvp.Value.Name != "ВнешниеПользователи") continue; count++; Catalog model = kvp.Value as Catalog; if (model == null) { stream.WriteLine("Catalog {" + kvp.Key.ToString() + "} is not found!"); continue; } bool result = metadata.CompareWithDatabase(model, out delete, out insert); if (!result) { LogResult(stream, model, delete, insert); } foreach (TablePart tablePart in model.TableParts) { result = metadata.CompareWithDatabase(model, out delete, out insert); if (!result) { LogResult(stream, tablePart, delete, insert); } } } stream.WriteLine("*******************************"); stream.WriteLine(count.ToString() + " objects processed."); } }