我做這個 -控制器想關鍵還是如果新類是基於另一個類
文件 - >新建項目 - >的Visual C#.NET框架4.5。 - > ASP.Net MVC 4 Web應用程序。
我創建一個類Personne和Personne派生類Etudiant
Personne.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace TestTryHelper.Models
{
public class Personne
{
public int PersonneId { get; set; }
public string Nom { get; set;}
public string Prenom { get; set; }
}
public class Etudiant : Personne
{
public string Ecole { get; set; }
}
}
我嘗試添加的HomeController(控制器/ ADD /控制器(在模型文件夾中) )
控制器名稱:HomeController的 Scalfolding選項 模板:使用實體Frameworkd 型號氯MVC控制器的讀/寫操作和視圖驢:Etudiant(TestTryHelper.Models) 數據上下文類:
在窗口中新建數據上下文TestTryHelper.Models.TestTryHelperContext 單擊確定 瀏覽次數:剃刀
單擊添加
我得到這個錯誤消息
Unable to retrieve metadata for 'TestTryHelper.Models.Etudiant'.
One or more validation errrors were detected during mode generation:
-System.Data.Entity.Edm.EdmEntity,Type: EntityType 'Etudiant'
has no key defined. Define the key for this EntityType.
-system.Data.Entity.Edm.EdmEntitySet: EntityType: EntitySet ' Etudiants' is based on type
'Etudiant that has no keys defined.
由於某種原因,它爲其他人工作。我可以通過在Etudiant類下添加EtudiantId來解決此問題。
任何人都知道爲什麼它對某些人而不是其他人有用?
感謝
我試過只有Id而不是PersonneId,並且它的工作效果很好。我想嘗試你的其他選擇,但我可以弄清楚如何把鑰匙[]你可以告訴我如何做到這一點請。謝謝 – user3127986
我已經更新了我的答案。 –
您的兩個解決方案都解決了我的問題。感謝您的慷慨幫助。 – user3127986