Acme.PROJECTNAME.Install.SqlServers.RunEmbeddedFile C# (CSharp) Метод

RunEmbeddedFile() публичный статический Метод

public static RunEmbeddedFile ( SqlConnection connection, SqlTransaction transaction, string resourceFileName ) : void
connection System.Data.SqlClient.SqlConnection
transaction System.Data.SqlClient.SqlTransaction
resourceFileName string
Результат void
		public static void RunEmbeddedFile(SqlConnection connection, SqlTransaction transaction, string resourceFileName)
		{
			string tempFolder = "";
			if (resourceFileName.ToLower().EndsWith(".zip"))
			{
				tempFolder = ArchiveReader.ExtractArchive(resourceFileName);

				string[] files =  Directory.GetFiles(tempFolder, "*.sql");
				SortedDictionary<string, string> fileList = new SortedDictionary<string, string>();
				
				foreach (string file in files)
				{
					fileList.Add(file, file);
				}
				foreach (string file in fileList.Values)
				{
					string[] scripts = ReadSQLFileSectionsFromFile(file);
					foreach (string sql in scripts)
					{
						ExecuteSQL(connection, transaction, sql);
					}
				}

				//Remove the temp folder if necessary
				try
				{
					System.IO.Directory.Delete(tempFolder, true);
				}
				catch (Exception ex) { }

			}
			else
			{
				string[] scripts = ReadSQLFileSectionsFromResource(resourceFileName);
				foreach (string sql in scripts)
				{
					ExecuteSQL(connection, transaction, sql);
				}
			}

		}

Usage Example

Пример #1
0
 private void ReinstallStoredProcedures()
 {
     try
     {
         SortedDictionary <string, EmbeddedResourceName> storedProcedures = this.GetResourceNameUnderLocation(".Stored_Procedures");
         foreach (EmbeddedResourceName ern in storedProcedures.Values)
         {
             try
             {
                 SqlServers.RunEmbeddedFile(_connection, _transaction, ern.FullName);
             }
             catch (Exception ex)
             {
                 System.Windows.Forms.MessageBox.Show("Sp Fail: " + ern.FullName);
                 throw;
             }
         }
     }
     catch (Exception ex)
     {
         throw;
     }
 }
All Usage Examples Of Acme.PROJECTNAME.Install.SqlServers::RunEmbeddedFile