Dot-Net
實體框架遷移錯誤 - 序列不包含任何元素
命令: add-migration blahblah -verbose
**錯誤:**序列不包含任何元素
在收到此錯誤之前,我做了一些事情。我對程式碼優先模型進行了更改,但尚未執行
add-migration。然後我添加了一個 EDMX 模型來直覺地玩弄一個想法。我意識到 EDMX 模型弄亂了我的程式碼,所以我刪除了它。我試圖執行add-migration並得到“序列不包含任何元素”。我升級到 EF 5 並解除安裝了舊的遷移包,但我的配置除外。然後我又試add-migration了一次,我仍然得到“序列不包含元素”。以下是錯誤的其餘部分。System.InvalidOperationException: Sequence contains no elements at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source) at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.GetQualifiedTableName(XDocument model, String entitySetName) at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<FindRenamedIndependentAssociationColumns>b__ba(>f__AnonymousType16`2 <>h__TransparentIdentifieraa) at System.Linq.Enumerable.<c__DisplayClass12`3.<CombineSelectors>b__11(TSource x) at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Linq.Enumerable.<ConcatIterator>d__71`1.MoveNext() at System.Linq.Enumerable.<ConcatIterator>d__71`1.MoveNext() at System.Linq.Enumerable.<DistinctIterator>d__81`1.MoveNext() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(XDocument sourceModel, XDocument targetModel, String connectionString) at System.Data.Entity.Migrations.DbMigrator.Scaffold(String migrationName, String namespace, Boolean ignoreChanges) at System.Data.Entity.Migrations.Design.MigrationScaffolder.Scaffold(String migrationName, Boolean ignoreChanges) at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.Scaffold(MigrationScaffolder scaffolder) at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.RunCore() at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.Run() Sequence contains no elements
看起來像一個錯誤。您介意在<http://entityframework.codeplex.com/workitem/list/advanced>上送出它,並附上允許重現問題的詳細資訊嗎?
當嘗試使用
DataAnnotations.壞的:
[Column(TypeName="VARCHAR(254)")] public string ColumnName { get; set; }好的:
[MaxLength(254)] [Column(TypeName="VARCHAR")] public string ColumnName { get; set; }