属性设置过程与外部功能

时间:2014-06-23 13:35:47

标签: vb.net properties

假设我有List(Of String)类型的属性。

第一个选项

我可以使用set过程执行整个代码并获取没有exetran函数的URL。

Private Property UrlList As List(Of String)
    Get
        Return pUrlList
    End Get
    Set(value As List(Of String))
        'Do some long procedure.
         pUrlList = value
    End Set
End Property

Secont选项

我可以使用外部函数并在Set过程中调用它。

Private Property UrlList As List(Of String)
    Get
        Return pUrlList
    End Get
    Set(value As List(Of String))
        value = GetURL(value)
        pUrlList = value
    End Set
End Property


Private Function GetURL(ByVal URLList As List(Of String)) As List(Of String)
    'Do the long procedure here.
    Return URLList
End Function

总而言之,这两个选项做同样的事情,而UrlList将以两种方式获得相同的URL。

我的问题

当我在SO和许多其他地方查看各种代码时,属性不用于执行主代码或主要功能,它们只是像字段一样使用,内部有一些错误处理(If IsNothing( )然后......类型的东西)。

我的问题

为什么呢? 为什么在第一个选项中不使用属性设置过程?当我可以在Set过程中执行代码时,为什么要使用外部函数。

你建议我做什么?我应该一直使用各种功能,多样化还是使用Set程序?

0 个答案:

没有答案