我遇到了通過WCF RIA服務進行更新後刷新頁面數據的問題。WCF RIA服務問題更新
我在頁面上有一個組合框和一個按鈕。用戶從ComboBox中選擇一個項目,然後單擊該按鈕。這可以軟刪除數據庫中的項目(設置「Active」= false)。但是,我希望在更新完成後將其從ComboBox中刪除。這是我的問題所在。
InventorySystemDomainContext context = new InventorySystemDomainContext();
private void btnDelete_Click(object sender, RoutedEventArgs e)
{
Cigarette c = cboCigarette.SelectedItem as Cigarette;
c.Active = false;
SubmitOperation so = context.SubmitChanges();
so.Completed += delegate (object s, EventArgs es)
{
LoadComboBox();
}
}
private void LoadComboBox()
{
cboCigarettes.DataSource = null;
cboCigarettes.DataSource = context.Cigarettes;
context.Load(context.GetCigarettesQuery());
}
當單擊刪除按鈕時,所有代碼都會運行。但是,刪除的項目仍然在ComboBox中(即使記錄已在數據庫中更新)。如果我刷新頁面,該項目將從ComboBox中消失。
任何想法?
PS:我從內存中寫了這段代碼,因爲我沒有代碼。所以我可能已經忘記了一條線,但我想我已經得到了所有相關的線。
不context.GetCigarettesQuery()返回查詢結果集從非活動排除項目? (就像Cigarettes.Where(c =>!c.Active)) – STO 2010-07-09 17:36:28
是的。 'LoadComboBox'方法在Window_Loaded事件中執行。當我在刪除後刷新頁面時,刪除的項目現在從ComboBox中消失。我希望在不刷新整個頁面的情況下發生這種情況。 – 2010-07-09 17:53:12