.net 用户更改两个前端服务器时发生迁移错误

.net 用户更改两个前端服务器时发生迁移错误,.net,asp.net-mvc,entity-framework,.net,Asp.net Mvc,Entity Framework,我有两个前端服务器,带有负载平衡器和一个数据库 有时用户从一个前端服务器切换到第二个前端服务器(LoadBalancer的自动操作) 当它到达时,会生成一个错误,但对用户来说是透明的 System.InvalidOperationException: La séquence ne contient aucun élément correspondant. à System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`

我有两个前端服务器,带有负载平衡器和一个数据库

有时用户从一个前端服务器切换到第二个前端服务器(LoadBalancer的自动操作)

当它到达时,会生成一个错误,但对用户来说是透明的

 System.InvalidOperationException: La séquence ne contient aucun
 élément correspondant. à
 System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`2
 predicate) à
 System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.DiffAssociations(ReferentialConstraint
 referentialConstraint1, ReferentialConstraint referentialConstraint2,
 ICollection`1 renamedColumns) à
 System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<>c__DisplayClass1e4.<FindAddedForeignKeys>b__1df(Tuple`2
 at) à System.Linq.Enumerable.WhereSelectListItera tor`2.MoveNext() à
 System.Linq.Enumerabl e.<ConcatIterator>d__59`1.MoveNext() à
 System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() à
 System.Linq.Enumerable.<ConcatIterator>d__59`1.MoveNext() à
 System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) à
 System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) à
 System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(ModelMetadata
 source, ModelMetadata target, Lazy`1 modificationCommandTreeGenerator,
 MigrationSqlGenerator migrationSqlGenerator, String
 sourceModelVersion, String targetModelVersion) à
 System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(XDocument
 sourceModel, XDocument targetModel, Lazy`1
 modificationCommandTreeGenerator, MigrationSqlGenerator
 migrationSqlGenerator, String sourceModelVersion, String
 targetModelVersion) à
 System.Data.Entity.Migrations.DbMigrator.IsModelOutOfDate(XDocument
 model, DbMigration lastMi gration) à
 System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1
 pendingMigrations, String targetMigrationId, String lastMigrationId) à
 System.Data.Entity.Migrations.DbMigrator.UpdateInternal(String
 targetMigration) à
 System.Data.Entity.Migrations.DbMigrator.EnsureDatabaseExists(Action
 mustSucceedToKeepDatabase) à
 System.Data.Entity.Migrations.DbMigrator.Update(String
 targetMigration) à
 System.Data.Entity.MigrateDatabaseToLatestVersion`2.InitializeDatabase(TContext
 context) à
 System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action
 action) à
 System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization()
 à System.Data.Entity.Internal.RetryAction`1.PerformAction(TInput
 input) à
 System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action`1
 action) à System.Data.Entity.Internal.InternalContext.Ge
 tEntitySetAndBaseTypeForType(Type entityType) à
 System.Data.Entity.Internal.Linq.InternalSet`1.Initialize() à
 System.Data.Entity.Internal.Linq.InternalSet`1.Include(String path) à
 System.Data.Entity.Infrastructure.DbQuery`1.Include(String path) à
 System.Data.Entity.QueryableExtensions.Include[T,TProperty](IQueryable`1
 source, Expression`1 path)
System.InvalidOperationException:序列不连续
对应项。à
System.Linq.Enumerable.Single[t源](IEnumerable`1源,Func`2
谓语)
System.Data.Entity.Migrations.Infrastructure.EdmModelDifference.DiffAssociations(参考约束
参考约束1,参考约束2,
ICollection`1重命名列)a
System.Data.Entity.Migrations.Infrastructure.EdmModelDifference.c_uuDisplayClasse4.b_uuu1DF(元组'2
at)a System.Linq.Enumerable.Where SelectListItemera or`2.MoveNext()
System.Linq.enumerable e.d_u59`1.MoveNext()
System.Linq.Enumerable.Where SelectEnumerableInterator`2.MoveNext()
System.Linq.Enumerable.d_u59`1.MoveNext()
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)á
System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)á
System.Data.Entity.Migrations.Infrastructure.EdmModelDifference.Diff(ModelMetadata
源,模型元数据目标,Lazy`1 modificationCommandTreeGenerator,
MigrationSqlGenerator MigrationSqlGenerator,字符串
sourceModelVersion,字符串targetModelVersion)
System.Data.Entity.Migrations.Infrastructure.EdmModelDifference.Diff(XDocument
sourceModel,XDocument targetModel,Lazy`1
modificationCommandTreeGenerator、MigrationSqlGenerator
migrationSqlGenerator,字符串sourceModelVersion,字符串
targetModelVersion)a
System.Data.Entity.Migrations.DbMigrator.isModelOutdate(XDocument
模型,DbMigration lastMi gration)a
System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1
pendingMigrations,字符串targetMigrationId,字符串lastMigrationId)的
System.Data.Entity.Migrations.DbMigrator.UpdateInternal(字符串
目标(移民)a
System.Data.Entity.Migrations.Dbmigator.EnsureDatabaseExists(操作
必须成功访问(数据库)
System.Data.Entity.Migrations.DbMigrator.Update(字符串
目标(移民)a
System.Data.Entity.Migratedatabase到最新版本`2.InitializeDatabase(TContext
(上下文)
System.Data.Entity.Internal.InternalContext.PerforminizationAction(操作
行动)a
System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization()
§System.Data.Entity.Internal.RetryAction`1.性能(TInput)
输入)a
System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(操作'1
动作)a System.Data.Entity.Internal.InternalContext.Ge
TentityStandBaseTypeForType(Type entityType)的十分之一
System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
System.Data.Entity.Internal.Linq.InternalSet`1.Include(字符串路径)á
System.Data.Entity.Infrastructure.DbQuery`1.Include(字符串路径)á
System.Data.Entity.QueryableExtensions.Include[T,TProperty](IQueryable`1
源,表达式` 1路径)

但我不明白为什么:这两台服务器是相同的,具有相同的源和相同的DLL。

您确定这是因为负载平衡吗?你怎么知道的?从错误消息判断,您正在对一个没有项目的集合执行.First()。我只有一个数据库,因此集合不是空的。但是我知道这个用户使用了第一个前端服务器,在他使用了第二个前端服务器之后。如果没有看到更多的代码,我想不可能确定问题到底是什么。我的项目很大,问题出现在很多方面,不可能向您显示代码。。。