C # SMO - Dados da tabela de script para arquivo. Jogando Erro

Estou tentando criar um backup dos dados contidos no meu banco de dados antes de recriar as tabelas. Eu tenho até o ponto de conectar ao servidor e criar o arquivo para armazenar o SQL. O problema é lançar um erro na última linh

"Referência de objeto não definida para uma instância de um objeto"

Estive neste projeto o dia todo, então pode estar faltando algo que um novo par de olhos ajudari

Aqui está o código:

public void scriptTables()
    {
        string folder = HttpContext.Current.Server.MapPath("/Scripts/SQLScripts/");

        Server myServer = new Server(".\\SQLEXPRESS");
        Database CMSDB = myServer.Databases["CMSDB"];

        Scripter script = new Scripter(myServer);
        ScriptingOptions so = new ScriptingOptions();
        so.ScriptData = true;
        so.ScriptSchema = true;
        so.ScriptDrops = false;

        foreach (Table table in CMSDB.Tables)
        {
            string tables = table.ToString();
            string filename = folder + table + ".sql";
            FileStream fs = File.Create(filename);
            so.FileName = filename;

            CMSDB.Tables[tables].EnumScript(so);
        }
    }
}

Alguns antecedentes do que estou fazendo:

Eu quero extrair os dados que já existem no banco de dados e depois alterar os modelos de entidade. Quando o aplicativo reiniciar, o framework EF descartará e recriará o banco de dados; nesse ponto, reintroduzirei os dados que estavam lá anteriormente. Não tenho certeza se todo o processo funcionará, mas isso será necessário até que eles liberem o recurso de migração no EF.

Espero que alguém possa ajudar. Obrigad

questionAnswers(3)

yourAnswerToTheQuestion