如何定义一个可以返回DataTable或List <t>的方法?</t>

时间:2013-03-28 12:38:38

标签: c# interface datatable generic-collections

我正在尝试定义一个可以返回数据列表的通用方法。我想让它变得灵活,允许返回DataTable或List&lt; T&gt;。 e.g。

 *SomeGenericDataTypeInterface* GetResult(IDictionary IDictParams);

DataTable和List似乎没有任何共同的基本接口。这有可能吗?

4 个答案:

答案 0 :(得分:5)

您将需要两种不同的方法,一种返回DataTable,另一种返回List。虽然可能有一些方法(如某些建议),但最佳做法是让两个方法各自返回一个显式类型。

答案 1 :(得分:0)

将输出定义为object。但这将是非常笼统的

答案 2 :(得分:0)

为什么不使用dynamic关键字,即

public dynamic GetResult(IDictionary IDictParams)
{
}

答案 3 :(得分:0)

DataTable和List继承自object类型,因此返回对象类型。在调用方法中,您可以将返回类型检查为if(result is DataTable){//do this}