【问题标题】:Refresh entity framework view result刷新实体框架视图结果
【发布时间】:2015-09-25 15:47:45
【问题描述】:

我在数据库中有一个名为 vue_demande 的视图,我需要在我的应用程序中获取它的所有行:

public IEnumerable<vue_demande> GetAllDemandes()
    {
        if ( context == null) context = GetContext();
        return context.Set<vue_demande>().AsNoTracking <vue_demande>().ToList();
    }

当我修改视图表的某些值时,它没有刷新!!!

我需要知道:

  1. 为什么会这样?
  2. 如何获取最新的视图行列表?

【问题讨论】:

  • 作为一般规则,除非您需要它,否则您应该始终为每个请求创建一个新的上下文。除非您需要事务或可以按逻辑方式对请求进行分组。

标签: c# .net entity-framework view orm


【解决方案1】:

我假设您正在修改上下文之外的值。 context 只会向数据库询问它还没有的信息。如果您要求上下文再次获取相同的信息,它将只使用上次检索到的值(这可以节省到服务器的行程)。

要“刷新”,只需获取一个新的上下文:

context = GetContext(); //Assuming your GetContext method returns a new context

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-12
    • 1970-01-01
    • 2015-06-02
    • 2011-08-15
    • 1970-01-01
    相关资源
    最近更新 更多