SQL DataAdapter удаляет символ # и объединяет значения (например, 10#1000 становится 101000) при заполнении набора данныC#

Место общения программистов C#
Anonymous
SQL DataAdapter удаляет символ # и объединяет значения (например, 10#1000 становится 101000) при заполнении набора данны

Сообщение Anonymous »

Я использую хранимую процедуру для получения данных в приложении C#. SQL-запрос возвращает правильные значения при выполнении непосредственно на SQL Server, но когда я использую SqlDataAdapter для заполнения набора данных, выходные значения изменяются с 10#1000 на 101000. Похоже, что символ # удаляется, а значения объединяются. . Столбец таблицы базы данных имеет следующие значения:

Код: Выделить всё

CancelChargesStep1  | CancelChargesStep2    | CancelChargesStep3
------------------------------------------------------------------
10#1000             | 20#500                | 30#250
Вот упрощенная версия моего кода на C#:

Код: Выделить всё

`SqlCommand sqlComm = new SqlCommand("MyStoredProcedure", sqlConn);
sqlComm.CommandType = CommandType.StoredProcedure;

SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = sqlComm;
DataSet ds = new DataSet();
da.Fill(ds);`
Я попробовал преобразовать столбцы в моем SQL-запросе в формат VARCHAR или NVARCHAR, чтобы гарантировать, что значения обрабатываются как строки:

Код: Выделить всё

SELECT  CAST(CancelChargesStep1 AS VARCHAR(50)) AS CancelChargesStep1 FROM MyTable;


Подробнее здесь: https://stackoverflow.com/questions/790 ... 1000-becom

Вернуться в «C#»