1

ASP.net Web サイトでチュートリアルを作成する MVC の学習を開始しましたが、1 つのことを理解できません。

コントローラーとモデルを作成すると、エラーが発生します

System.Data.Entity.Edm.EdmEntityType: : EntityType 'TusofonaFields' にはキーが定義されていません。この EntityType のキーを定義します。

Web で検索しようとすると、ID に [Key] が見つからないというメッセージが常に表示されますが、残念ながら私のビジュアル スタジオでは次のエラーが表示されます。

型または名前空間名 'Key' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

私のコード:

public ActionResult Index()
{
    return View(db.site_membros.ToList());
}

そしてモデル:

namespace MvcApplication2
{
    public class TusofonaFields
    {
      public int IDMembro { get; set; }
      public string Alcunha { get; set; }        
      public DateTime Aniversario { get; set; }        
      public string Foto { get; set; }
    }

public class TusofonaTable : DbContext
{        
    public DbSet<TusofonaFields> site_membros { get; set; }
}   

}

4

2 に答える 2

4

MVC4 ウィザードを使用してビューを作成していて、viewModel にキーが必要ない場合は、ダイアログの [データ コンテキスト クラス] テキストボックスが空であることを確認してください。このボックスに EntityFramework DB コンテキストが入力されている場合、このエラーが発生します。それを削除すると、エラーはなくなります。

于 2015-03-01T03:18:06.860 に答える
1

さて、エラーは何が起こっているかを示しています。あなたは欠落している参照です。

EntityFramework 4: プロジェクトの参照に System.ComponentModel.DataAnnotations があることを確認します。次にusing System.ComponentModel.DataAnnotations;、cs ファイルの先頭に名前空間を追加するか、mouse2 を使用します。[Key]>Resolve>using System.ComponentModel.DataAnnotations;

EntityFramework 5 を使用している場合、必要な名前空間はSystem.ComponentModel.DataAnnotations.Schema

于 2013-06-06T10:06:42.393 に答える