Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在asp.net中将空值传递给datetime数据类型?_Asp.net_C# 4.0 - Fatal编程技术网

如何在asp.net中将空值传递给datetime数据类型?

如何在asp.net中将空值传递给datetime数据类型?,asp.net,c#-4.0,Asp.net,C# 4.0,如何在asp.net中将空值传递给datetime数据类型 cmdInsertUpdateConsultantDetails.Parameters.Add("@DateofExpiry", SqlDbType.DateTime); if (txtdateofexpiry.Text.Trim() == "") { cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value = } else { cmdInse

如何在asp.net中将空值传递给datetime数据类型

cmdInsertUpdateConsultantDetails.Parameters.Add("@DateofExpiry", SqlDbType.DateTime);
if (txtdateofexpiry.Text.Trim() == "")
{
    cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value =
}
else
{
    cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value = 
        Convert.ToDateTime(txtdateofexpiry.Text.Trim());
}

DateTime是一种值类型,不能为null。您可以使用
Nullable
(或语法缩写
DateTime?
)来代替它

下面是一个例子:

DateTime? dateTime;
DateTime.TryParseExact(txtdateofexpiry.Text.Trim(), "dd/MM/yyyy", null, DateTimeStyles.None, out dateTime);

DateTime不是可为空的类型。如果不提供值,则它等于DateTime.MinValue

你可以用

DateTime? MyNullableDateTime;

如果您感兴趣,请在答案中提供更多详细信息。

您可以将其作为
DBNull.Value
传递。是的

cmdInsertUpdateConsultantDetails.Parameters.Add("@DateofExpiry", SqlDbType.DateTime);
if (txtdateofexpiry.Text.Trim() == "")
{
    cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value = DBNull.Value;
}
else
{
    cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value = 
          Convert.ToDateTime(txtdateofexpiry.Text.Trim());
}

这里很简单,您可以给
DbNull.Value
传递
NULL

if (txtdateofexpiry.Text.Trim() == "")
{
    cmdInsertUpdateConsultantDetails.Parameters["@DateofExpiry"].Value = DbNull.Value
}

还建议使用
DateTime?

datetimeStyle。没有错误,添加了任何名称空间,请告诉我系统中是否有AdateTimeStyles枚举。全球化名称空间,如果这是您要求的。还应选中“添加”。约会时间?当前日期时间;