2009-07-25 80 views
1

我有一个Web窗体(.aspx)有一个文本框。 我的用户可以在文本框中输入一个值作为波斯日期。 我应该做的是将texbox.text转换为DateTime。 但有时,文本框内没有文本,所以我应该照顾它并返回null。如何使用c#将DateTime或DbNull发送到数据库?

当我返回null如何插入空(C#)到数据库?

+1

您使用的是什么技术?数据集? LINQ to SQL?实体框架? – 2009-07-25 08:25:46

回答

4

这一切都取决于你如何做你的数据访问..手工?

如果是这样;有两种常用的方法可以传递空的DateTime;原来是用DateTime.MinValue来表示null;第二种是使用Nullable<DateTime>(又名DateTime?)来传递日期。然后在你的DAL你发现这一点,并切换到DBNull.Value

if(someDate == DateTime.MinValue) { // or "== null" for Nullable<DateTime> 
    dateParam.Value = DBNull.Value; 
} else { 
    dateParm.Value = someDate; 
} 

使用LINQ到SQL的Nullable<DateTime>做法应该“只是工作”。

相关问题