如何在返回多种类型的方法中注入返回类型?

Posted

技术标签:

【中文标题】如何在返回多种类型的方法中注入返回类型?【英文标题】:How do I inject a return type in a method that returns multiple types? 【发布时间】:2015-03-13 21:45:33 【问题描述】:
 public T SomeMethod<T>()

   if(somecondition==something) return 999;
   if(somecondition==somethingelse) return "String";

 

问题是这两个返回语句都会收到设计时错误,表明它们不是 T 类型。

调用者代码如下所示。

int ID = SomeMethod<int>();
string StringVaule = SomeMethod<string>();

【问题讨论】:

【参考方案1】:

问题的答案是:

return (T)(object) 999;

return (T)(object) "String";

我称之为“双重演员”......

【讨论】:

以上是关于如何在返回多种类型的方法中注入返回类型?的主要内容,如果未能解决你的问题,请参考以下文章