在開發Entity Framework的程式時,發生以下錯誤:
\tSystem.Data.Entity.Edm.EdmEntityType: : EntityType 'People' 未定義索引鍵。請定義此 EntityType 的索引鍵。
我的環境是
- Visual studio 2012
- MVC 4.0
- Entity Framework
- SQLSERVER COMPACT 4
於是到model的類別,在id欄位前增加[key]的參數,並
Using System.ComponentModel.DataAnnotations;
public class People
{
[Key]
public int ID{ get; set; }
執行後出現新的錯誤:
由於建立了資料庫,支援 'PeopleContext' 內容的模型已經變更。請考慮使用 Code First 移轉來更新資料庫 (http://go.microsoft.com/fwlink/?LinkId=238269)。
英文:
The model backing the 'BlogContext' context has changed since the database was created. Consider using Code First Migrations to update the database (http://go.microsoft.com/fwlink/?LinkId=238269).”
.
懷疑是Entity Framework meta table錯亂,於是在套件管理主控台輸入以下指令
PM>
Enable-Migrations -EnableAutomaticMigrations –ContextTypeName People.Models.PeopleContext
結果還是一樣,後來檢查一遍原因是
沒有安裝Entityframework.SqlserverCompact
沒有留言:
張貼留言