反射代码在.NetStandard或.NetFramework中出错

时间:2017-11-21 19:53:45

标签: c# reflection html-agility-pack

我已将HtmlAgilityPack分叉到我的github并将其克隆到我的视觉工作室。

The project

HtmlAgilityPack目标 .NetFramework 2.0 和HtmlAgilityPack.NetStandard目标 .NetStandard 1.6

我在 HtmlAgilityPack.Shared 中添加了一些反射代码,例如:

public static PropertyInfo GetFirstPropertyInfo(Type t)
{       
     return t.GetProperties().First();
}

它让我犯了这个错误:

  

'类型'不包含' GetProperties'的定义和不   扩展方法' GetProperties'接受第一个类型的参数   '类型'可以找到(你是否错过了使用指令或   汇编参考?) HtmlAgilityPack.NETStandard

在一些StackOverflowing之后我发现我应该使用这个代码:

public static PropertyInfo GetFirstPropertyInfo(Type t)
{       
     return t.GetTypeInfo().GetProperties().First();
}

但是此代码在.NetFramework中出错!

  

'类型'不包含' GetTypeInfo'的定义和不   扩展方法' GetTypeInfo'接受第一个类型的参数   '类型'可以找到(你是否错过了使用指令或   汇编参考?) HtmlAgilityPack

我该怎么做???

感谢。

0 个答案:

没有答案