如何在ASP.NET C#中刷新数据库而不刷新页面#

时间:2013-06-16 21:14:03

标签: c# asp.net refresh pageload ispostback

我有这个按钮事件:

protected void AddDetails_Click(object sender, EventArgs e)
    {


        DataSetTableAdapters.SelectFriendsTableAdapter sft = new DataSetTableAdapters.SelectFriendsTableAdapter();
        try
        {
            sft.AddFriend(current, newFriend, false);
        }
        catch
        {
            error.Text = "Something happened. Bummer!";
        }

    }

try部分,我在数据库中添加条目。在页面中有标签/文本框以及相应的值。

一切正常。但是,我需要刷新页面才能在单击此提交按钮后查看更改。

我在PageLoad代码的开头添加了if(!IsPostBack),但我仍然需要访问另一个页面/返回查看更改。

有什么想法吗?

感谢。


感谢您的回复。我正在使用ListView:

protected void Page_Load(object sender, EventArgs e)
    {
     if (!IsPostBack)
        {
            DataSetTableAdapters.SelectFriendsTableAdapter sdt = new DataSetTableAdapters.SelectFriendsTableAdapter();
            DataTable tab = sdt.SelectFriends();
            ListView1.DataSource = tab;
            ListView1.DataBind();

        }
    }

,因此ListView内容应该更新。

2 个答案:

答案 0 :(得分:1)

如果您不想刷新页面并且您正在使用asp.net webforms,则可以使用UpdatePanel并将所有控件放在其中等等...这将保留表单中的更改/提交信息时显示。我假设表单是在提交已更改/新数据,因为您没有具体说明数据的更新/更改方式。

如果您不想使用更新面板,那么当页面回发时,您必须使用“newFriend”对象中的值设置要更新的UI控件的值(I' m假设有更改的值)。

答案 1 :(得分:-1)

发现它!

此问题的解决方案是在提交按钮点击事件结束时添加此代码:

Server.Transfer("currentpage.aspx");