【发布时间】:2011-02-18 08:39:52
【问题描述】:
我收到“对象引用未设置为对象的实例”。使用 PostBackUrl 后,PreviousPage 出现错误。
我创建了一个简单的测试页面来重新创建问题,但它工作正常,直到我将源页面和目标页面移动到不同的文件夹中。这是 PreviousPage 对象为空的原因吗?我该如何解决?
源页面和目标页面所在的文件夹都在网站的根目录中。
源页面:/companies/test.aspx
<asp:Content runat="server" ID="Content" ContentPlaceHolderID="FullPage">
<asp:TextBox ID="Demo" runat="server"></asp:TextBox>
<asp:LinkButton ID="testlink" Text="test" runat="server" PostBackUrl="~/Documents/test2.aspx">
TESTING
</asp:LinkButton>
</asp:Content>
public string MyVariable
{
get
{
return Demo.Text;
}
}
目标页面:/documents/test2.aspx
<%@ PreviousPageType VirtualPath="~/Companies/test.aspx" %>
<asp:Content runat="server" ID="Content" ContentPlaceHolderID="FullPage">
<asp:Label ID="output" runat="server" />
</asp:Content>
protected void Page_Load(object sender, EventArgs e)
{
string MyText = PreviousPage.MyVariable;
output.Text = MyText;
}
【问题讨论】:
-
您使用的是哪种重定向? Response.Redirect,Server.Transfer?
-
@RoBYCoNTe:它只是使用链接按钮上的 PostBackUrl="~/Documents/test2.aspx"。