2

Silverlight アプリを作成し、domaindatasource を使用して設定されたリスト ボックスを作成しました。選択したリスト項目を取得してフィールドを更新するボタンを作成しました (私の場合は IsDeleted と呼ばれます)。私のドメイン サービスは次のようになります。

  public IQueryable<Employee> GetEmployees(int storeID)
    {
        return this.ObjectContext.Employees.Where(e=>(e.StoreID==storeID)&&(e.IsDeleted==false));
    }

私のボタンイベントでは、これをやっています

    EmployeeRecord.IsDeleted = true;
                        dsEmployee.SubmitChanges();

アプリケーションがリロードされるか、更新が表示されないよりも F5 キーを押すまで、データベースは期待どおりに更新されています。アップデートをすぐに確認するには、他に何をすればよいですか?

4

1 に答える 1

3

ドメイン コンテキストをリロードする必要があります。以下を呼び出します。

myDomainDataSource.SubmitChanges((submitArgs) =>
            {
                if (submitArgs.IsComplete)
                {
                    myDomainDataSource.Load<MyType>(myDomainDataSource.MyQuery(filterTextBox.Text), System.ServiceModel.DomainServices.Client.LoadBehavior.RefreshCurrent, true);
                    if (myDataSource.CanLoad)
                        myDataSource.Load();
                }
                else if (submitArgs.HasError)
                {
                    throw submitArgs.Error;
                }
            }, null);
于 2011-03-01T17:37:24.613 に答える