本文介绍了一个功能有不同的返回类型......可能的仿制药?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有几个的程序,为简单起见,如下所示:

 公共字符串FetchValueAsString(字符串键)
公众诠释FetchValueAsInteger(字符串键)
公共BOOL FetchValueAsBoolean(字符串键)
公共的DateTime FetchValueAsDateTime(字符串键)
 

我知道我可能只是有一个方法,返回和对象类型,只是做了转换,但我不知道是否有一种方法我可以有一个称为一种方法,并以某种方式使用泛型来确定返回值。 ......可能吗?

解决方案

 公共静态牛逼FetchValue< T>(字符串键)
{
    字符串值;
    //逻辑来这里设定值
    // ...
    返程(T)Convert.ChangeType(值的typeof(T),CultureInfo.InvariantCulture);
}
 

I have a few procedures, for simplicity sake, look like the following:

public string FetchValueAsString(string key)
public int FetchValueAsInteger(string key)
public bool FetchValueAsBoolean(string key)
public DateTime FetchValueAsDateTime(string key)

I know I could just have one method that returns and object type and just do a conversion, but I'm wondering if there is a way I can just have one method called, and somehow use generics to determine the return value ... possible?

解决方案
public static T FetchValue<T>(string key)
{
    string value;  
    // logic to set value here  
    // ...  
    return (T)Convert.ChangeType(value, typeof(T), CultureInfo.InvariantCulture);  
}

这篇关于一个功能有不同的返回类型......可能的仿制药?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-29 21:09