VB.net class 和函数实例 - 最有效的方法

VB.net class and function instance - most efficient method

我想知道你们在这种情况下会怎么做。

我基本上是为 Person 返回一个数据集,但我想知道最有效的处理方式。

Public Class TestClass
    Public Shared Function returnPersonData() As Person
        Dim p As New Person
        p.Address = "Here and there"
        p.Name = "Mike"
        p.Career = "Pilot"
        Return p
    End Function
End Class

人class:

Public Class Person
    Public Property Name As String
    Public Property Address As String
    Public Property Career As String
End Class

然后我会通过在另一个 class:

中这样做来得到名字
Dim name As String = TestClass.returnPersonData.Name
Dim address As String = TestClass.returnPersonData.Address

我的问题是:为什么每次我需要提取姓名、地址和职业信息时,它都重新运行 returnPersonData 函数?为什么我不能只调用一次函数,将其保存在数据集中,然后再引用它?

因为你调用了两次...

Dim name As String = TestClass.returnPersonData.Name ' <--- One time here
Dim address As String = TestClass.returnPersonData.Address ' <--- An other time here

救人class实例

Dim currentPerson As Person = TestClass.returnPersonData

然后您可以通过

获取姓名或地址
Dim name As String = currentPerson.Name
Dim address As String = currentPerson.Address

您可以删除这两个变量并一直使用 currentPerson。