【发布时间】:2012-08-04 11:55:08
【问题描述】:
我正在为我的程序的一部分构建一个 MVC 结构。
我已经完成了 5-10 个表的模型,它们的共同点只是构造函数。 (采用recordset.fields)
这是我填充这些对象的函数:
Public Function reqTable(ByVal pTable As String, ByVal pType As Type, ByVal pNoProjet As Integer, Optional ByVal strAdditionnalConditions As String = "") As List(Of Object)
Dim lstRetour As List(Of Object) = New List(Of Object)
rsRequestCSV = conSQL.Execute("SELECT * FROM " & pTable & " WHERE NoProjet = " & pNoProjet & " " & strAdditionnalConditions)
With rsRequestCSV
While Not .EOF
lstRetour.Add(Activator.CreateInstance(pType, New Object() {rsRequestCSV.Fields})) 'New clsTable(rsRequestCSV.Fields))
.MoveNext()
End While
End With
Return lstRetour
End Function
我无法实现的是返回 List(Of pType) 而不是 List(Of Object)。
我想要这个的原因是在我的 datagridviews 中有标题,即使它们是空的。
那么有没有办法返回 List(Of MyModel'sType) ?
提前致谢!
【问题讨论】:
-
Dim x As T = New T()可以(并且应该)缩短为Dim x As New T()。 -
好吧,我是一名前 Java 编码员,我会记住这一点,谢谢。
标签: vb.net list generics dynamic types