如何使用对象参数列表确定C#反射中的方法签名

时间:2017-09-24 10:39:53

标签: c# .net reflection

我有一个C#反思问题,我不确定如何实现。

我需要允许访问我正在处理的产品的XML配置文件中的字符串方法。

例如:

<someElement field="someField.Substring(5,10)">

我可以很容易地收集方法 - 子串 - 和参数 - 5和10。

如果重载方法具有相同数量的参数,但类型不同,当我无法确定输入参数类型时,如何知道使用哪一个?

目前我可以尝试将参数转换为签名中的类型,如果它们通过则执行该方法。如果他们没有通过转换,那么我肯定不会使用该方法。如果两种方法成功,那么我就输了。

另一个选项是强制配置文件中的用户将类型放在参数之前,如:

<someElement field="someField.Substring(int 5, int 10)">

这是我认为我必须要做的事情,除非我错过了反思的一些方面,这会使这更容易(我没有多少经验使用反射)。

编辑:总体目标是允许我公司的专业服务部门(他们将为新客户执行产品部署)能够调整客户提供的输入以满足他们的要求。对于某些客户,我的公司需要根据许多因素操纵输入数据(以为该客户端配置系统之前未知的方式)。这可能是客户在部署产品后更改了数据结构或数据格式。或者这可能是由于将多个客户端登上单个安装,我们需要区分两个名称相似的客户等......

我需要创建一种处理大量情况的方法,我认为这将提供最大的灵活性。

0 个答案:

没有答案