public override bool Sync()
 {
     try
     {
         foreach (var tableName in OneCv77CatalogColumns.Select(s => s.tableName).Distinct())
         {
             if (!equalCatalogTableDescribe(tableName))
             {
                 _sqlAdaptor.recreateTable(tableName, OneCv77CatalogColumns.Where(t => t.tableName.Equals(tableName)).ToList());
             }
         }
         foreach (var tableName in OneCv77DocumentsColumns.Select(s => s.tableName).Distinct())
         {
             if (!equalDocumentTableDescribe(tableName))
             {
                 _sqlAdaptor.recreateTable(tableName, OneCv77DocumentsColumns.Where(t => t.tableName.Equals(tableName)).ToList());
             }
         }
         foreach (var tableName in OneCv77DocumentsHeaderColumns.Select(s => s.tableName).Distinct())
         {
             if (!equalDocumentHeaderDescribe(tableName))
             {
                 _sqlAdaptor.recreateTable(tableName, OneCv77DocumentsHeaderColumns.Where(t => t.tableName.Equals(tableName)).ToList());
             }
         }
     }
     catch (Exception ex)
     {
         Logger.logger.Error(ex);
         return(false);
     }
     return(true);
 }
 protected bool equalDocumentHeaderDescribe(string tableName)
 {
     foreach (var oneCcol in OneCv77DocumentsHeaderColumns.Where(c => c.tableName.Equals(tableName)))
     {
         if (!SqlColumns.Any(c => c.tableName.Equals(tableName) && c.columnName.Equals(oneCcol.columnName)))
         {
             return(false);
         }
     }
     return(true);
 }