C# EF 4-物化视图上的执行错误

C# EF 4-物化视图上的执行错误,c#,entity-framework,entity-framework-4,execution-time,materialized-views,C#,Entity Framework,Entity Framework 4,Execution Time,Materialized Views,我在EF(EF4,数据库优先)上有一个执行错误,在几个windows服务执行了很长一段时间后出现了这个错误 这里有一些关于这个问题的细节 这不是编译错误,因为系统在编译时没有 问题 这不是代码错误,因为该代码已执行 如果没有多次出现问题,错误就会在所有方面发生 我们拥有的环境 总是发生在同一个地方(我们已经看到 此错误仅出现在'ContractDataEntities'edmx文件中,但是,我有 多次重新创建此映射,没有任何运气) 不是数据错误,因为在重新启动服务后 过去的失败现在处理起来没有任

我在EF(EF4,数据库优先)上有一个执行错误,在几个windows服务执行了很长一段时间后出现了这个错误

这里有一些关于这个问题的细节

  • 这不是编译错误,因为系统在编译时没有 问题
  • 这不是代码错误,因为该代码已执行 如果没有多次出现问题,错误就会在所有方面发生 我们拥有的环境
  • 总是发生在同一个地方(我们已经看到 此错误仅出现在'ContractDataEntities'edmx文件中,但是,我有 多次重新创建此映射,没有任何运气)
  • 不是数据错误,因为在重新启动服务后 过去的失败现在处理起来没有任何问题
  • 为了解决这个问题,根据我们得到的错误信息( EntityContainer的映射和元数据信息 “ContractDataEntities”不再与用于 创建预生成的视图。)我们已经实现了一个构建 在每个构建中激活的生成,因此我们可以确定预生成的视图始终是最新的
  • 问候


    错误堆栈跟踪

    *:*-->System.Data.EntityCommandCompilationException:准备命令定义时出错。有关详细信息,请参见内部异常。-->System.Data.MappingException:EntityContainer“ContractDataEntities”的映射和元数据信息不再与用于创建预生成视图的信息匹配。 位于System.Data.Mapping.StorageMappingItemCollection.ViewDictionary.SerializedDegeneratedViewsEntityViewContainer(MetadataWorkspace工作区、EntityViewContainer EntityViewContainer、Dictionary
    2 ExtentMappingView)
    位于System.Data.Mapping.StorageMappingItemCollection.ViewDictionary.SerializedCollectViewsFromObjectCollection(MetadataWorkspace工作区,Dictionary
    2 ExtentMappingView) 位于System.Data.Mapping.StorageMappingItemCollection.ViewDictionary.SerializedGetGeneratedViews(EntityContainer容器) 在System.Data.Common.Utils.Memoizer
    2.c_uuDisplayClass2.b_uu0()中
    在System.Data.Common.Utils.Memoizer中
    2.Result.GetValue() 在System.Data.Common.Utils.Memoizer
    2.Evaluate(目标参数)中
    位于System.Data.Mapping.StorageMappingItemCollection.ViewDictionary.GetGeneratedView(EntitySetBase区段、MetadataWorkspace工作区、StorageMappingItemCollection StorageMappingItemCollection)
    位于System.Data.Metadata.Edm.MetadataWorkspace.GetGeneratedView(EntitySetBase范围)
    位于System.Data.Query.PlanCompiler.PreProcessor.ExpandView(节点节点、ScanTableOp、ScanTableOp和类型过滤器)
    位于System.Data.Query.PlanCompiler.PreProcessor.ProcessScanTable(节点scanTableNode、ScanTableOp、ScanTableOp和typeFilter)
    在System.Data.Query.PlanCompiler.PreProcessor.Visit(ScanTableOp,节点n)中
    在System.Data.Query.InternalTrees.ScanTableOp.Accept[TResultType](BasicopVisitorSoft
    1V,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitChildren(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitRelOpDefault(RelOp-op,节点n)
    在System.Data.Query.PlanCompiler.PreProcessor.Visite(ProjectOp,节点n)中
    在System.Data.Query.InternalTrees.ProjectOp.Accept[TResultType](basicopvisitorfot
    1v,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitChildren(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitRelOpDefault(RelOp-op,节点n)
    在System.Data.Query.PlanCompiler.PreProcessor.Visite(FilterOp op,节点n)中
    在System.Data.Query.InternalTrees.FilterOp.Accept[TResultType](BasicopVisitorSoft
    1V,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitChildren(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitRelOpDefault(RelOp-op,节点n)
    在System.Data.Query.PlanCompiler.PreProcessor.Visite(ProjectOp,节点n)中
    在System.Data.Query.InternalTrees.ProjectOp.Accept[TResultType](basicopvisitorfot
    1v,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitChildren(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitRelOpDefault(RelOp-op,节点n)
    在System.Data.Query.InternalTrees.basicopvisitorfort中
    1.VisitSortOp(SortBaseOp,节点n) 在System.Data.Query.InternalTrees.BasicOpvisitorSoft
    1.Visit(ConstrainedSortOp操作,节点n)
    在System.Data.Query.InternalTrees.ConstrainedSortOp.Accept[TResultType](BasicopVisitorSoft
    1V,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    在System.Data.Query.PlanCompiler.PreProcessor.Visite(ProjectOp,节点n)中
    在System.Data.Query.InternalTrees.ProjectOp.Accept[TResultType](basicopvisitorfot
    1v,节点n) 位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n)
    位于System.Data.Query.PlanCompiler.SubqueryTrackingVisitor.VisitChildren(节点n)
    位于System.Data.Query.InternalTrees.BasicOpVisitorOfNode.VisitDefault(节点n)
    位于System.Data.Query.InternalTrees.BasicOpVisitorOfNode.VisitpPhysicalOpdefault(PhysicalOp,节点n)
    在System.Data.Query.InternalTrees.BasicopVisitorSoft中访问(PhysicalProjectOp,节点n)
    在System.Data.Query.InternalTrees.PhysicalProjectOp.Accept[TResultType](BasicOpVisitorOfT
    1v,节点n)
    位于System.Data.Query.InternalTrees.BasicopVisitorSoft
    1.VisitNode(节点n) 在System.Data.Query.PlanCompiler.PreProcessor.Process()中 在System.Data.Query.PlanCompiler.PreProcessor.Process(PlanCompiler planCompilerState,Struct