我得到以下警告:
对标记为"值不能为空"属性的实体的可能"空"赋值
我的代码:
if (verifier.GetType().GetInterface(typeof(IAsyncVerifier).FullName, true) == null)
{
continue;
}
Run Code Online (Sandbox Code Playgroud)
typeof(IAsyncVerifier).FullName部分警告.怎么可以为空?你会怎么解决它?或者也许有更好的方法来确定对象是否实现了特定的接口?
或者也许有更好的方法来确定对象是否实现了特定的接口?
使用is运算符来检查对象的类型是否来自特定接口或类
if (verifier is IAsyncVerifier)
Run Code Online (Sandbox Code Playgroud)
看看这篇MSDN文章Type.FullName它说该属性不会返回任何内容.
...如果当前实例表示基于类型参数的泛型类型参数,数组类型,指针类型或byref类型,或者不是泛型类型定义但包含未解析类型参数的泛型类型,则无效.
如果您确定当您访问FullName时,在任何情况下都不会为null,您可以使用//resharper disable注释禁用此警告