如何防止GridView将数据保存到Visual Studio中构建
问题描述:
我有一个问题,关于使用ASP .NET应用程序中的GridView
,ObjectDataSource
发生的情况。如何防止GridView将数据保存到Visual Studio中构建
的GridView
链接到ObjectDataSource
并且两者都包括在UpdatePanel
内让在GridView从在同一页中,因此获得了更多行的形式以异步方式来填补在用户输入的数据:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="ObjectDataSource1">
<Columns>
<asp:BoundField DataField="Name" HeaderText="Name" ReadOnly="True"
SortExpression="Name" />
<asp:BoundField DataField="Periodicty" HeaderText="Periodicty" ReadOnly="True"
SortExpression="Periodicty" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
SelectMethod="GetSessionNames" TypeName="Simulation"></asp:ObjectDataSource>
<asp:Label ID="Label27" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="NewWebSessionButton" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
我用Visual Studio 2008开始项目,填写表单并且它能正常工作。然后我停止执行:再次重新运行,并且我在前一次运行中输入的数据位于GridView
。就像某种缓存保存了会话之前的数据。我检查了属性为ObjectDataSource
设置为false。
如果我在Visual Studio中重建网站(不只是生成),那么它工作正常,使GridView
空。
这是由于Visual Studio造成的吗?它可以关闭吗?它会在最终的IIS中运行吗?
非常感谢。
答
您是否检查过您的浏览器是否缓存页面?我有类似的问题与此有关。
我最终添加了一些方法到我的基页来调用来停止正在缓存的页面。
如:
/// <summary>
/// Set the page to not Cache
/// </summary>
protected void DontCache()
{
try
{
//Dont Cache
Response.Expires = 0;
Response.Cache.SetNoStore();
Response.AppendHeader("Pragma", "no-cache");
}
catch (Exception)
{
throw;
}
}