Пишите XML с кодировкой UTF-8 - PullRequest
0 голосов
/ 17 января 2020

Добрый день всем! Я создал пакет служб SSIS, который выполняет запрос SQL, сохраняет результаты в переменной, а затем экспортируется в файл XML с помощью задачи «Сценарий». Код C# довольно прост и содержит всего несколько строк и использует Write XML для перемещения данных из переменной SSIS в файл. Однако при создании файла XML объявление в верхней части заполняется:

? xml version = "1.0" standalone = "yes"?

Мне нужно файл для заполнения:

? xml version = "1.0" encoding = "utf-8"?

Ниже приведен весь код, который я добавил в C# Сценарий, и я не могу на всю жизнь выяснить, где или как изменить объявление в файле XML (часы в поиске Google). Вы можете видеть, что я попытался удалить часть XMLWriterSettings, поскольку это не решило мою проблему. Есть мысли, ребята? Это что-то простое, что мне не хватает или мой код должен быть написан по-другому? Спасибо заранее, что нашли время, чтобы прочитать это.

    public void Main()
    {
        DataTable dt;

        //XmlWriterSettings ws = new XmlWriterSettings
        //{
        //    Encoding = System.Text.Encoding.UTF8
        //};

        dt = (new DataSet("Detail")).Tables.Add("Table1");

        (new OleDbDataAdapter()).Fill(dt, Dts.Variables["User::Table1"].Value);

        dt.WriteXml(@"C:\Users\charris\Documents\TestFileOutput\Result.xml");
        Dts.TaskResult = (int)ScriptResults.Success;
    }
...