为什么LinqDataSource RaiseViewChanged()不起作用

本文关键字:不起作用 RaiseViewChanged LinqDataSource 为什么 | 更新日期: 2023-09-27 18:25:32

我有一些类似的代码:

   private IQueryable Search()
   {
     //dcBase is my DataContext instance
     var q = from p in dcBase.Users
            select new
            {
                p.ID,
                p.FirstName,
                p.LastName
            };
     return q;
    }
    protected void ldsResult_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    e.Result = Search();
}
protected void btnsend_Click(object sender, EventArgs e)
{
    if (CheckValidate())
    {
        Save();
        ldsResult.RaiseViewChanged(); 
        ClearForm();
    }
}

第一次,当页面加载时,Search()方法在ldsResult_Selecting之后激发,但当我更改某些内容并在Save()方法中调用dcBase.SubmitChange()时,即使我在Save()方法之后调用ldsResult.RaiseViewChanged();,它也根本不激发??在过去的两年里,这种情况发生了两次,原因是什么?

为什么LinqDataSource RaiseViewChanged()不起作用

我发现了什么,当第一次没有数据绑定时就会发生!!!如果我替换ldsResult.RiseViewChanged()在带有"dlResult.DataBind();"的"btnsend_Click"中它工作正常