用于对不同类型的输入对象进行操作的通用类型函数

时间:2017-05-07 15:29:04

标签: vb.net

我有一些列表(这些只是组成的例子):

Dim peopleContactedToday as list (of People) =  getPeople() 
Dim companiesContactedToday as list (of Company) = getCompanies()

现在假设People类和Company类都有属性DateContacted。我想创建一个泛型函数,它接受任何数组并设置DateContacted

我试过这个,但是没有编译,因为编译器当然不知道T是否有属性DateContacted

Function SetData(Of T)(InputArr As List(Of T)) As List(Of T)
     For Each item In InputArr
         item.DataContacted = Now().Date
     Next
     return InputArr
End Function

如何在VB.net中编写泛型函数来操作所有这些函数中存在的属性。我可以看到我可以拥有一个DateContacted属性的根类,并从中继承PersonCompany。然后我可以使用该接口而不是在上面的方法中使用T,但这不是真正的泛型函数,并且假设示例中的这两个类是由Entity Framework生成的(我不能放置父接口)。

0 个答案:

没有答案