我希望填充一个对象,然后将数据显示给标签。
我创建了一个学生班:
Public Class student
Public Dim sNum As Integer
Public sName As String
Public Sub New(ByVal sNum As Integer)
MyBase.New()
Me.sNum = sNum
End Sub
我有一个数据库类,我想用它来填充它。
Public Function populateStudent() As Object
Dim ObjStudent As New student(1)
ObjStudent.sName = "Bitz"
Return ObjStudent
End Function
显然这只是一个步骤,最终我将查询数据库以填充数据,但我想先让它工作,所以我知道我正确地创建了这个。
在我的.aspx附带的主要课程中,我希望能够做到
lblStudentName.Text = ObjStudent.sName
我是否正确地解决了这个问题,还是有更好的方法?
答案 0 :(得分:1)
你不必拥有
MyBase.New()
因为你没有明确的基类。
Object的populateStudent()
的返回类型没有多大意义;如果您计划在查询数据库后返回学生集合,它应该是学生列表。如果您计划从此方法本身填充视图,那么它应该是Sub
不返回任何内容而不是Function
。
否则其他一切看起来都没问题。
编辑: 听起来你需要这样的东西。
Public Function populateStudent(Id as String) As student
Dim ObjStudent As New student(1)
ObjStudent.sName = "Bitz"
Return ObjStudent
End Function
答案 1 :(得分:0)
关闭。您需要在.Text
控件上设置Label
属性:
lblStudentName.Text = ObjStudent.sName
(你已经编辑了你的问题以包含......经常让我感到困扰的是,如果在初始发布后不久编辑,那么SO没有显示编辑的内容)
至于“更好的方式”,请记住,有很多方法可以做任何事情。 “更好”是非常相对的,取决于您目前为止所拥有的代码中没有的其他因素。截至目前,您有一个返回对象实例的方法(类似于Factory pattern,可以随意研究该模型和其他模式),并使用该对象的属性填充UI中的数据字段。非常简单,没有错。
随着系统的发展和问题领域变得越来越复杂,“好设计”与“糟糕设计”的定义将会更多。但刚刚开始,这非常好。