我正在使用.net framework 4.5
我收到以下错误
错误CS0453类型' MyObject'必须是不可为空的值类型才能将其用作参数' T'通用类型或方法' Nullable'
public async Task<Nullable<MyObject>> MyMethod(string myParamter)
{}
我也试过
public async Task<MyObject?> MyMethod(string myParamter)
{}
如果我将该东西设置为可空,那么为什么我会在方法名称下方的红线上显示此错误消息
stackoverflow answer很简单,使返回类型可以为空,但对我来说Visual Studio不允许它。
答案 0 :(得分:23)
由于MyObject
是一个对象,并且对象根据定义可以为空,因此无需使用Nullable<T>
结构或?
运算符来支持空值。
Nullable<T>
适用于结构(如DateTime
)和值类型,如int
,float
等。