2010-10-10 87 views
2

我已经创建了一个Silverlight应用程序,并有一个使用domaindatasource填充的列表框。我创建了一个按钮,带选中的列表项和更新的字段(在我的情况下,它被称为请将isDeleted) 我的域名服务是这样的silverlight 4 RIA更新项目在domaindatasource更新后只更新

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

在我的按钮事件我这样做

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

数据库已按预期更新,直到应用程序重新加载或I F5比我没有看到更新。 我还应该做些什么才能立即看到更新?

回答

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);