/// <summary> /// Truncates the database and runs the SQL file at the provided path against the current database /// </summary> /// <param name="FileName">The file name to run</param> /// <param name="SplitOn">The batch delimeter, defaults to "GO"</param> public static async Task Restore(string FileName, string ConnectionString, int CommandTimeout = 300, string SplitOn = ScriptHelpers.DEFAULT_SPLIT, Encoding encoding = null) { encoding = encoding ?? Encoding.Default; TruncateDatabase(ConnectionString); await ScriptHelpers.RunSplitScript(FileName, ConnectionString, CommandTimeout, SplitOn, encoding); }
/// <summary> /// Runs the SQL file at the provided path against the current database /// </summary> /// <param name="FileName">The file name to run</param> /// <param name="SplitOn">The batch delimeter, defaults to "GO"</param> /// <param name="encoding">The encoding to read the file with</param> /// <param name="detectEncodingFromByteOrderMarks">Try to automatically detect the file encoding</param> /// <param name="bufferSize">The buffer size for the stream reader</param> public async Task ExecuteScript(string FileName, string SplitOn = ScriptHelpers.DEFAULT_SPLIT, Encoding encoding = null, bool detectEncodingFromByteOrderMarks = true, int bufferSize = -1) { encoding = encoding ?? Encoding.Default; await ScriptHelpers.RunSplitScript(FileName, this.ConnectionString, this.CommandTimeout, SplitOn, encoding, detectEncodingFromByteOrderMarks, bufferSize); }