LINQ to Entities - 刷新上下文

时间:2014-07-12 07:50:20

标签: c# linq entity-framework

我在我的数据库中查看了i映射到corensponding实体。

CREATE VIEW [dbo].[OrdersTest]
AS
SELECT 
    CAST(1 as int) AS Id,
    'ORD-1' as DocumentNumber
UNION ALL
SELECT 
    CAST(2 as int) AS Id,
    'ORD-2' as DocumentNumber
UNION ALL
SELECT 
    CAST(3 as int) AS Id,
    'ORD-3' as DocumentNumber

以下是加载数据的代码

Context Con = new Context();
var expression = from orders in this.Con.OrdersTest select orders
ObservableCollection<OrdersTest> = ToObservableCollection<OrdersTest>(expression);

第一次正确加载数据。 我想在我的视图中模拟一个变化。我编辑视图和更改DocumentNumber的值(应用程序仍在运行)。 然后我调用上面相同的代码,但数据没有更新。

有没有办法强制刷新数据?

1 个答案:

答案 0 :(得分:0)

使用AsNotracking方法返回一个新查询,其中返回的实体不会缓存在DbContext中。

Context Con = new Context();
var expression = from orders in this.Con.OrdersTest.AsNoTracking() select orders
ObservableCollection<OrdersTest> = ToObservableCollection<OrdersTest>(expression);