我有一些列表(这些只是组成的例子):
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
属性的根类,并从中继承Person
和Company
。然后我可以使用该接口而不是在上面的方法中使用T,但这不是真正的泛型函数,并且假设示例中的这两个类是由Entity Framework生成的(我不能放置父接口)。