2015-09-14 43 views
0

我剛纔說在我的項目>數據層> Property.csSitefinity框架 - 錯誤的更新數據庫:序列包含多個元素

public Property() 
{ 
    this.Amenties = new List<Amenity>(); 
} 

public string Latitude { get; set; } 
public string Longitude { get; set; } 
public virtual ICollection<Amenity> Amenties { get; set; } 

,並在我的項目>數據層> Amenties.cs這些行

public virtual ICollection<Property> Properties { get; set; } 

獲取上運行更新數據庫以下輸出

PM> update-database 
    Specify the '-Verbose' flag to view the SQL statements being applied to the target database. 
    Applying explicit migrations: [201509141729336_PropLatLongAmt]. 
    Applying explicit migration: 201509141729336_PropLatLongAmt. 
    Running Seed method. 
    System.InvalidOperationException: Sequence contains more than one element 
     at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source) 
     at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.<GetElementFunction>b__2[TResult](IEnumerable`1 sequence) 
     at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.ExecuteSingle[TResult](IEnumerable`1 query, Expression queryRoot) 
     at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.System.Linq.IQueryProvider.Execute[TResult](Expression expression) 
     at System.Data.Entity.Internal.Linq.DbQueryProvider.Execute[TResult](Expression expression) 
     at System.Linq.Queryable.SingleOrDefault[TSource](IQueryable`1 source, Expression`1 predicate) 
     at System.Data.Entity.Migrations.DbSetMigrationsExtensions.AddOrUpdate[TEntity](DbSet`1 set, IEnumerable`1 identifyingProperties, InternalSet`1 internalSet, TEntity[] entities) 
     at System.Data.Entity.Migrations.DbSetMigrationsExtensions.AddOrUpdate[TEntity](IDbSet`1 set, Expression`1 identifierExpression, TEntity[] entities) 
     at SitefinityWebApp.Migrations.Configuration.Seed(TopSpotDbContext context) in e:\My Work\salman\Topspot\SitefinityWebApp\Web\Migrations\Configuration.cs:line 40 
     at System.Data.Entity.Migrations.DbMigrationsConfiguration`1.OnSeed(DbContext context) 
     at System.Data.Entity.Migrations.DbMigrator.SeedDatabase() 
     at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.SeedDatabase() 
     at System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId) 
     at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId) 
     at System.Data.Entity.Migrations.DbMigrator.UpdateInternal(String targetMigration) 
     at System.Data.Entity.Migrations.DbMigrator.<>c__DisplayClassc.<Update>b__b() 
     at System.Data.Entity.Migrations.DbMigrator.EnsureDatabaseExists(Action mustSucceedToKeepDatabase) 
     at System.Data.Entity.Migrations.Infrastructure.MigratorBase.EnsureDatabaseExists(Action mustSucceedToKeepDatabase) 
     at System.Data.Entity.Migrations.DbMigrator.Update(String targetMigration) 
     at System.Data.Entity.Migrations.Infrastructure.MigratorBase.Update(String targetMigration) 
     at System.Data.Entity.Migrations.Design.ToolingFacade.UpdateRunner.Run() 
     at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate) 
     at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate) 
     at System.Data.Entity.Migrations.Design.ToolingFacade.Run(BaseRunner runner) 
     at System.Data.Entity.Migrations.Design.ToolingFacade.Update(String targetMigration, Boolean force) 
     at System.Data.Entity.Migrations.UpdateDatabaseCommand.<>c__DisplayClass2.<.ctor>b__0() 
     at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command) 
    Sequence contains more than one element 

沒有d字段的上傳已經檢查了它,我只在整個(POCO)屬性類中添加了一個緯度和一個經度和Amenties。 我在運行update-database之前運行添加遷移一次

回答

0

嘗試將Property類和Properties屬性重命名爲其他內容。可能是這些是導致這個問題的保留字。

+0

該屬性類曾在那裏,代碼工作正常。此外,類屬性,「屬性」我嘗試重命名爲「屬性」,但我不會在錯誤的地方。 – hasnainwasaya

0

通過調試更新數據庫

Debug code-first Entity Framework migration codes

我曾嘗試恢復的變更我做了回,並仍然得到同樣的錯誤,所以我跟着上面鏈接中的說明,發現發現問題該錯誤在 第40行,如堆棧輸出中所示

at SitefinityWebApp.Migrations.Configuration.Seed(TopSpotDbContext context) in PROJECT_DIRECTORY\SitefinityWebApp\Web\Migrations\Configuration.cs:line 40 
相關問題