2013-08-23 89 views
1

目前,我有我的类中的下列财产保存值到MS SQL数据库时会导致一个问题。如果值是“”记录在数据库中的值是0。我的问题是,如果该值为“”我需要的数据库值是零。我试过下面虽然很明显的数据类型是错误的,犯规编译。 sql中的数据类型是(float,null)。有任何想法吗? 非常感谢,数据类型的问题

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

我尝试

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

如果(string.IsNullOrEmpty(测试)){ obj.MyProperty = NULL; } –

+2

该值不能是''“',因为它是'double?',而不是'string'。所以它是'null'或任何'double'值。另外,你说你想把值保存到数据库中,但是在你显示的代码中,你尝试设置那个属性,但是你没有显示你用来实际保存值的代码。 – sloth

回答

-1

在SQL试试这个

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

为什么Downvote来回呢? –

+0

不是我的失望,但你只是部分回答。 'obj.MyProperty = DbNull.Value'可以关于这个吗? –

+0

@Date是日期类型varible在数据库中不是varchar,因为你希望设置你想要设置的数据类型 –