在第一页,我想创建一个类的实例:
pOne = New pClass()
xOne = New xClass(pOne)
然后在后续页面中,我希望能够使用pOne和xOne。由于pOne和xOne是第一页的本地,我如何在其他页面中使用它们?
答案 0 :(得分:6)
您可以使用Session变量来存储该对象,并在另一个页面中使用它。
//Set the session
Session["p1"]=pOne;
Session["x1"]=xOne;
在第二页,阅读会话
if(Session["p1"]!=null)
{
// If object is present in session, Cast that to our class (PClass) type
PClass objP1=(PClass) Session["p1"];
//Now you can use objP1
}
if(Session["x1"]!=null)
{
XClass objx1=(XClass) Session["x1"];
//Now you can use objx1
}
最好在访问变量
之前始终进行空检查这是VB.NET版本(我希望这个有用,我在VB.NET上没有太多经验)
// Set the Session
Session("p1")=pOne
Sesssion("x1")=xOne
在第二页阅读会话,
if Session("p1") IsNot Nothing Then
Dim objP1 As pClass
objP1=CType(Session("p1"),pClass)
'Now you can use objP1
End If
if Session("x1") IsNot Nothing Then
Dim objX1 As xClass
objX1=CType(Session("x1"),xClass)
'Now you can use objX1
End If
答案 1 :(得分:1)
您可以使用HttpContext.Items
,然后您不必清理延迟对象,除非您重置它们,否则它们会消失:
Use HttpContext Item Collection to pass objects across pages