gpt4 book ai didi

c# - 如何使方法的返回类型通用?

转载 作者:IT王子 更新时间:2023-10-29 03:31:55 26 4
gpt4 key购买 nike

有没有办法使此方法通用,以便我可以返回字符串、 bool 值、整数或 double 值?现在,它返回一个字符串,但如果它能够找到“true”或“false”作为配置值,我想返回一个 bool 值。

    public static string ConfigSetting(string settingName)
{
return ConfigurationManager.AppSettings[settingName];
}

最佳答案

你需要让它成为一个泛型方法,像这样:

public static T ConfigSetting<T>(string settingName)
{
return /* code to convert the setting to T... */
}

但是调用者 必须指定他们期望的类型。然后您可能会使用 Convert.ChangeType ,假设支持所有相关类型:

public static T ConfigSetting<T>(string settingName)
{
object value = ConfigurationManager.AppSettings[settingName];
return (T) Convert.ChangeType(value, typeof(T));
}

请注意,我并不完全相信这一切都是个好主意......

关于c# - 如何使方法的返回类型通用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808035/

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