使用构造函数构造类

时间:2012-10-01 05:23:07

标签: asp.net vb.net

我有一个带有构造函数的类。我的构造函数获取所有必需参数,然后我使用参数返回另一个类。

Public Class SearchResults()

  private id as int


    Sub New(id) ' Constructor
        getResults(id)
    End Sub

    Public Function getResults(byval id as int) as List(of Products)
       ........
      return list (of products)
    End Function

End

然后在我的页面中,我想获得所有产品。

Dim s = new SearchResults( 1 )
Dim p as list(of Products) = s.getResults()

----现在我可以为每个人做这个

这对我有用,但我确实感觉必须有更好的方法,我想坚持最好的标准。你们认为这是最好的方法还是可以改进?我的设计师将在他们的项目中使用这个课程......所以我希望尽可能简化它们。

或者如何创建类的集合...例如类产品及其集合类产品,其中产品是项目类的集合。

3 个答案:

答案 0 :(得分:0)

你可以使getResults方法成为静态,并且不得不创建一个类实例来调用它。

答案 1 :(得分:0)

我个人会将getResults方法声明为Shared,这样您就不必创建SearchResults对象来访问该方法。这也允许您使用另一个ID再次调用该方法,而无需创建另一个对象。

答案 2 :(得分:0)

有三种方法可以做你想要的: 1)您可以加载结果并将它们存储在构造函数的对象中 2)您可以将ID存储在对象中并调用该函数以在需要时获得结果 3)您可以将函数设置为静态并传入ID以及集合(或获取集合所需的资源),而不是使用对象。

根据您的需要,最有可能是1或3。如果您计划将对象重用于其他方法而不仅仅是一个函数,那么选项1是最好的,但如果您只需要1函数,请使用选项3,如下所示:

Public Class SearchResults
Public Static Function getResults(ByVal id As int) As List(Of Products)
   '........
  return list (of products)
End Function

End Class