无法在c#mvc模型中组合日期和时间

无法在c#mvc模型中组合日期和时间,c#,asp.net-mvc,model,C#,Asp.net Mvc,Model,我有一个这样的模型 [DataType(DataType.Date)] [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true), Display(Name = "Start Date")] public DateTime? StartDate { get; set; } [DataType(DataType.Time)] [DisplayForma

我有一个这样的模型

    [DataType(DataType.Date)]
    [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true), Display(Name = "Start Date")]
    public DateTime? StartDate { get; set; }

    [DataType(DataType.Time)]
    [DisplayFormat(DataFormatString = "{0:HH:mm}", ApplyFormatInEditMode = true), Display(Name = "Start Time")]
    public DateTime? StartTime { get; set; }
newDateTime = date.Date + time.TimeOfDay;
我想把它们组合成一个变量

我搜索过代码应该是这样的

    [DataType(DataType.Date)]
    [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true), Display(Name = "Start Date")]
    public DateTime? StartDate { get; set; }

    [DataType(DataType.Time)]
    [DisplayFormat(DataFormatString = "{0:HH:mm}", ApplyFormatInEditMode = true), Display(Name = "Start Time")]
    public DateTime? StartTime { get; set; }
newDateTime = date.Date + time.TimeOfDay;
但是我试过了

    [Display(Name = "Start Time")]
    public DateTime? FullStartTime
    {
        get
        {
            return StartDate.Date + StartTime.TimeOfDay;
            //or return StartDate + StartTime;
        }
    }

他们两个都不工作。问题在哪里?谢谢。

当您试图从两个不同的
DateTime
创建一个
DateTime
对象时,您必须创建一个新的
DateTime
对象并使用其构造函数,方法如下:

newDateTime = new DateTime(date.Date.Year, date.Date.Month,date.Date.Year,time.Hour,time.Minutes,time.Second);

您应该检查
StartDate
StartTime
是否不为null(您的属性是可为null的类型)


您有任何错误吗?我无法访问StartDate和StartTime中的任何内容。它是可以为空的,所以:
StartDate.Value.Date.Year
在使用
Value
之前,您还必须检查是否为空,否则将出现空引用异常