C# System.InvalidOperationException必须包含ViewModel的值
我的控制器中有:C# System.InvalidOperationException必须包含ViewModel的值,c#,asp.net-mvc,C#,Asp.net Mvc,我的控制器中有: MyTestViewModel asdf = new MyTestViewModel { SomeTestDate = _b.GetSomeDate(SomeID).Value, SomeDate2 = SomeDate2.Value, SomeDate3 = SomeDate3.Value }; 在函数“GetSomeDate”中,我有: 返回x作为日期时间 我得到InvalidOperationException,当函数返回null时,对
MyTestViewModel asdf = new MyTestViewModel
{
SomeTestDate = _b.GetSomeDate(SomeID).Value,
SomeDate2 = SomeDate2.Value,
SomeDate3 = SomeDate3.Value
};
在函数“GetSomeDate”中,我有:
返回x作为日期时间
我得到InvalidOperationException,当函数返回null时,对象必须包含值,它应该能够返回null
这里可能出了什么问题
/M在调用属性的getter之前,必须检查可空类型是否包含值,否则将出现异常:
var date = _b.GetSomeDate(SomeID);
MyTestViewModel asdf = new MyTestViewModel
{
SomeTestDate = date.HasValue ? date.Value : DateTime.MinValue,
SomeDate2 = SomeDate2.Value,
SomeDate3 = SomeDate3.Value
};
下面是getter的相关源代码(使用Reflector提取):
var date = _b.GetSomeDate(SomeID);
MyTestViewModel asdf = new MyTestViewModel
{
SomeTestDate = date.HasValue ? date.Value : DateTime.MinValue,
SomeDate2 = SomeDate2.Value,
SomeDate3 = SomeDate3.Value
};
public T get_Value()
{
if (!this.HasValue)
{
ThrowHelper.ThrowInvalidOperationException(ExceptionResource.InvalidOperation_NoValue);
}
return this.value;
}