Кажется, это может быть плохой идеей, но я не могу понять, почему:
У меня есть класс cXYZ со свойствами A, B и C. У него также есть метод sGetData, который загружает эти три свойства из базы данных, и метод sSaveData, который сохраняет его обратно.
class cXYZ
public property A as string...
public property B as string...
public property B as string..
public sub sGetData()...
public sub sSaveData()...
end class
Веб-форма имеет следующее свойство:
private property xyz() as cXYZ
get
return session("myXYZ")
end get
set (value as cXYZ)
session("myXYZ")=value
end set
end property
И следующие события:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
if not ispostback() then
xyz=new cXYZ()
end if
end sub
Protected Sub ButtonLoad_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonLoad.Click
//Can now reference the class
txtA.text=xyz.A
txtB.text=xyz.B
txtC.text=xyz.C
end sub
Protected Sub ButtonSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonSave.Click
//Can now reference the class
xyz.A=txtA.text
xyz.B=txtA.text
xyz.C=txtC.text
xyz.sSaveData()
end sub
Я вижу некоторые издержки с сериализацией / десериализацией для каждой ссылки на свойство - возможно, стоило бы сделать это:
Protected Sub ButtonSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonSave.Click
dim localxyz as cXYZ=xyz
localxyz .A=txtA.text
localxyz .B=txtA.text
localxyz .C=txtC.text
xyz=localxyz
end sub
Кроме этого, мнения о том, почему это хорошо или плохо? Класс не большой, он поддерживает состояние формы. Веб-формы отстой, и т. Д. Не очень полезно ..