У меня сложная проблема. В настоящее время я получаю таблицу данных из SQL, которая имеет EM-DASH и другие специальные символы, которые таблица данных не поддерживает, если только тип не находится в UTF32. Есть ли способ преобразовать тип данных из строки в UTF32?
Существует функция FillDataTable, которая считывает запрос и заполняет таблицу из SQL, обратите внимание, что все столбцы имеют строковый формат. Вот что я сделал до сих пор:
var dt = FillDataTable(query).Copy();
DataTable dtClone = table.Clone();
dtClone.Columns[0].DataType = typeof(System.Text.UTF32Encoding);
dtClone.Columns[1].DataType = typeof(System.Text.UTF32Encoding);
foreach (DataRow r in dt.Rows)
dtClone.ImportRow(r);
Однако это не работает. Есть ли способ сделать это, чтобы он держал строку в курсе? В противном случае тире становится скрытым символом, поскольку он использует UTF8.
SqlDataReader
. - person Jon Skeet   schedule 23.06.2016