在ASP.NET SQL Server中将DatetimeField设置为null

时间:2016-03-29 18:52:41

标签: c# asp.net sql-server

我有以下代码将数据插入table.Table有字段BlockTime,其类型为DateTime。我想将BlockTime初始化为null。这是我的代码的一部分,我想将其初始化为null。

var tracktable = new TrackTable
{
IPAddress = ipadd,
LastLoginResult = "Failed",
LastLoginTime = DateTime.Now,
LoginAttemptStreak = 1,
BlockTime = null // Set BlockTime to null
};
model.InsertTrack(tracktable);

上述方法给出了错误。 如何将变量初始化为null。我用Google搜索并发现了类似的问题。我复制粘贴那些解决方案,但没有一个工作。我怎样才能将BlockTime设置为最初为null。在使用c#编辑之前,我是否必须在sql server中执行任何操作。

2 个答案:

答案 0 :(得分:2)

您需要使用DBNull.Value并确保您的属性可以为空。

var tracktable = new TrackTable
{
IPAddress = ipadd,
LastLoginResult = "Failed",
LastLoginTime = DateTime.Now,
LoginAttemptStreak = 1,
BlockTime = DBNull.Value
};
model.InsertTrack(tracktable);

答案 1 :(得分:0)

BlockTime必须是可以为空的日期时间

  

公共日期时间? BlockTime {get;设置;}

  

public Nullable BlockTime {get;设置;}