我正在构建一个C#对象,以便将更多强类型属性添加到Web应用程序中,该应用程序将所有参数作为字符串接受。此Web应用程序在左侧显示所有记录的当前值,右侧显示空白字段。如果将文本输入字段留空,则会使数据库中的相应值保持不变。如果输入新值,则在提交时将相应的值更改为您输入的新值。
在应用程序中,日期字段以MM / dd / yyyy格式化字符串输入。我在C#对象中创建了DateTime等效项,并在将它们发送到Web应用程序时使用.ToString(“MM / dd / yyyy”)。
public DateTime NewHireDate
{
get
{
return (DateTime.TryParse(NewValue11, out dateValue) ? dateValue : DateTime.MinValue);
}
set
{
NewValue11 = value.ToString("MM/dd/yyyy");
}
}
一个问题是Web应用程序允许用户输入“* BLANK”以基本上清空日期字段中的值。我想通过允许将字符串“* BLANK”指定为我的日期属性的值来将该确切能力扩展到我的对象。
如何将NewHireDate属性重新定义为String,以便我可以使用myObject.NewHireDate =“* BLANK”?
答案 0 :(得分:1)
正如人们在评论中所说,你可以使用
类型日期时间?
而不是Datetime。
这允许您将Datetime属性设置为NULL值。
您可以通过在类上创建方法将这些字符串转换为DateTime格式来完成此操作。
参考:https://msdn.microsoft.com/en-us/library/2cf62fcy(v=vs.140).aspx