我有一个通用的方法,如:
public T GetLevelElement<T>(string name) where T : ILevelElement
{
//[...]
}
Run Code Online (Sandbox Code Playgroud)
这基本上在db中执行查找,在某些情况下它不会(并且不能返回)结果,我想返回null.
然而,这显然是不可能的,因为' T和null之间没有隐式转换 '.在这种情况下我该怎么办?
Dus*_*ell 25
T不能为null,因为T可以是值类型.尝试返回默认值(T)或添加类约束以指示T只能是这样的引用类型:
public T GetLevelElement<T>(string name) where T : ILevelElement, class
{
[...]
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1940 次 |
最近记录: |