Я получаю сообщение об ошибке, когда пытаюсь выполнить хранимую процедуру.Преобразование десятичного в десятичный для определенного формата?
C# свойство - что я не могу изменить:
private decimal? a;
public decimal? A
{
get { return a; }
set { a = value; }
}
C# DAC слой, который можно изменить:
if (A.HasValue)
dict.Add("A", A.Value);
else
dict.Add("A", null);
В хранимой процедуре ввода -> не могу изменить
@A decimal(6,0)
Каков наилучший способ его преобразования без исключения и потери данных? Мне нужно сделать то же самое для @B decimal(8,2)
Столбцы базы данных принимают значения NULL и десятичные числа в формате выше.
Ошибка я получаю:
Ошибка преобразования типа данных числовой системы счисления в десятичную
'dict.Add (" A ", A.HasValue.Value);' не компилируется. Я думаю, вы хотите использовать 'dict.Add (« A », A.Value)' –
'A.HasValue.Value', что? Почему 'dict.Add (« A », A)' не просто работает? Как вы уже писали, в любом случае вы не выполняете специальной обработки для «null». –
@TimSchmelter, Спасибо, Есть ли способ форматировать входной десятичный код C# –