标签:
sl5+wcf ria +ef
初学者水平
在sqlserver手动修改了数据库的数据以后,再到前台去刷新数据,发现数据没有变化,服务端返回和前台不一致
服务端代码
public IQueryable<Customer> GetCustomerByCustomerId(string customerId)
{
return this.ObjectContext.Customer.Where(e => e.CustomId == customerId);
}
客户端更新按钮代码
private void Button_Click(object sender, RoutedEventArgs e)
{
customerContext.Load<Customer>(customerContext.GetCoustomerByCustomerIdQuery("000001")).Completed += (s, x) =>
{
customer = (Customer)((LoadOperation<Customer>)s).Entities.FirstOrDefault();
MessageBox.Show(customer.CustomName + customer.Address);
};
}
例如修改了编号000001的customerName和customerAddress
在后台查看返回数据
前台获取的数据
原因无法清楚的表述出来,应该是和EF的持久化上下文有关
暂时的解决方法
在调用后台服务之前先调用上下文customerContext的EntityContainer.Clear()方法
希望在深入学习EF后能有所改善,也希望大家指点一下具体原因
使用EF生成数据模型,然后在数据库直接修改数据,前台刷新以后数据没有改变
标签:
原文地址:http://www.cnblogs.com/daguangtou/p/4290771.html