gpt4 book ai didi

c# - 从 app.config 读取数据类型值

转载 作者:行者123 更新时间:2023-11-30 23:24:59 30 4
gpt4 key购买 nike

我有一个通用方法 SampleMethod(param1, param2),我需要根据配置值调用该方法。例如:

SampleMethod<long>(param1, param2);
SampleMethod<Guid>(param1, param2);

在方法调用中,类型应该改变配置值。我需要从 app.config 文件等配置文件中获取值。

public static Type RangeType
{
get
{
Type rangeType;
string rangeDataTypeString = ConfigurationManager.AppSettings["ShardRangeType"];

switch (rangeDataTypeString.ToUpper())
{
case "LONG":
rangeType = typeof (long);
break;

case "GUID":
rangeType = typeof (Guid);
break;

default:
rangeType = typeof (long);
break;
}

return rangeType;
}
}

当我尝试基于配置值调用它并将该值传递给上述方法时,如:

Type rangeType = Configuration.RangeType;
SampleMethod<rangeType>(param1, param2);

上面语句中的 rangeType 不能识别为类型,有人可以建议如何完成这个。提前致谢!

最佳答案

如果“SampleMethod”方法存在于您想要调用它的同一个类中:

this.GetType().GetGenericMethod("SampleMethod",rangeType).Invoke(null,param1, param2);

关于c# - 从 app.config 读取数据类型值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37518670/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com