示例#1
0
 private void openController(string path, int conversionType, int i)
 {
     try
     {
         if (i == schemaPaths.Count)
         {
             MessageBox.Show("The program failed to convert!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
         else
         {
             switch (conversionType) {
                 case 0:
                     ClearInterface();
                     dbFile = new DatabaseFile(path, schemaPaths[i]);
                     WriteErrorLog(dbFile.LoadErrors);
                     for (int j = 0; j < dbFile.Tables.Count; j++) {
                         tableListBox.Items.Add(dbFile.Tables[j].TableName);
                     }
                     fileName = path;
                     this.Text = "Ego Database Editor - " + path;
                     break;
                 case 1:
                     dbFile.Write(File.Open(path, FileMode.Create, FileAccess.Write, FileShare.Read));
                     this.Text = "Ego Database Editor - " + path;
                     break;
                 case 2:
                     ClearInterface();
                     dbFile = new DatabaseFile(path);
                     WriteErrorLog(dbFile.LoadErrors);
                     for (int j = 0; j < dbFile.Tables.Count; j++) {
                         tableListBox.Items.Add(dbFile.Tables[j].TableName);
                     }
                     fileName = path;
                     this.Text = "Ego Database Editor - " + path;
                     break;
                 case 3:
                     dbFile.WriteXML(path);
                     this.Text = "Ego Database Editor - " + path;
                     break;
                 default:
                     MessageBox.Show("Incorrect Conversion Type! 0 - binToXml, 1 - xmlToBin", "Incorrect Conversion Type", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     break;
             }
         }
     }
     catch
     {
         if (conversionType == 0) {
             openController(path, conversionType, i + 1);
         } else {
             openController(string.Empty, -1, schemaPaths.Count);
         }
     }
 }