2010-02-24 57 views

回答

2

不定义看起来相当喜欢:

Public Function GetDataObjects(Of T)(ByVal dataset as DataSet) as IList<T> 
... 
End Function 

然后你使用它像

IList(Of Customer) customers = GetDataObjects(Of Customer)(someDataSet) 

如果是这样,客户提供了一个真正的类型来代替操作中使用T,其中在GetDataObjects函数

0

没有看到返回值的函数部分,它似乎意味着函数的返回类型是Customer。

你所看到的是VB.NET处理泛型的方法之一。

约翰

(我可能是错的。因为我做了VB.NET工作,它已经有一段时间。)

编辑

这是不是返回类型。 (对于混淆,抱歉)。它仅仅为函数提供了“客户”应该被视为特定类型的信息。客户成为定义类型的“参数”。它可以是Integer,String,Object,Decimal或任何其他类型。 (这是所有基本的泛型。)

推测,函数使用这种类型,但签名不显示使用。 (一种猜测是,这种类型被临时标注为“客户”,用于确定数据集中应该包含哪些列或如何使用这些列)。

+0

因此,这只是一种显示与“As Customer”不同的返回类型的方法吗? – jlrolin 2010-02-24 19:29:46

+0

@ jlrolin - no。你的代码是否真的编译? – user76035 2010-02-24 19:31:40

+0

是的,但我正在看,它绝对不是回报。现在我正在查看VB.net的一些泛型示例...也许我会更好地理解。 – jlrolin 2010-02-24 19:32:57

1

这意味着此方法是通用的。它有一个名为Customer的单一通用参数,没有限制。

你能为GetDataObjects方法提供更多的代码,所以我们可以添加更好的解释吗?