2013-08-23 3 views
1

В моем классе в моем классе есть следующее свойство, которое вызывает проблему при сохранении значения в базе данных ms sql. Если значение «", то значение, записанное в базе данных, равно 0. Моя проблема заключается в том, что значение «" Мне нужно, чтобы значение базы данных было нулевым. Я пробовал следующее, хотя, очевидно, тип данных ошибочен и не компилируется. Тип данных в sql равен (float, null). Есть идеи? Большое спасибо,проблема с типом данных с dbnull C#

public double? MyProperty 
{ 
    get { return obj.Test; } 
    set { obj.Test = value; } 
} 

Моя попытка

if (string.IsNullOrEmpty(Test)) 
{ 
    obj.MyProperty = DbNull.Value; 
} 
+1

если (string.IsNullOrEmpty (Test)) { obj.MyProperty = NULL; } –

+2

Значение не может быть '' '', потому что это 'double?', А не 'string'. Таким образом, это либо значение «null», либо любое значение «double». Кроме того, вы говорите, что хотите сохранить значение в базе данных, но в коде, который вы показали, вы пытаетесь установить это свойство, но вы не показываете код, который вы используете для фактического сохранения значения. – sloth

ответ

-1

Попробуйте это в SQL

CASE @Date 
WHEN '' THEN NULL 
ELSE @Date 
+0

Зачем? –

+0

Не мой нисходящий, но вы только частично ответили. 'obj.MyProperty = DbNull.Value' по этому поводу? –

+0

@ Дата, тип даты, varible в DB не varchar, и как вы хотите, какой тип данных вы хотите установить –

Смежные вопросы