ASP.NET MVC - CodeFirst開発モデル

   Entity Frameworkの開発フレームワークは、このようなデータベースまず、モデルまず、コードファーストのようにいくつかのモードを、提供しています。データベースの第一は、最も古く、最も広く適用される設計アプローチです。まず、このように設計されたデータベースは、テーブルとテーブル間の関係に基づいてモデルを作成するために、データベーステーブルの構造に大きく依存しています。後者は、変更や機能要件の対象となっている場合は大きく異なり良いコードを書く前に、もはや新しいテーブルに適用されますので、その後、データベースへの変更のコストを伴う必要が、偉大な賃金できなくなります、私たちはリファクタリングを変更する必要があります変更後のテーブルに適応するためにロジック。ADO.NETエンティティモデルの第一は、オブジェクトとそれらの関係を作成し、マッピングデータベースを指定することです。エンティティオブジェクトがモデルです。

       私たちの物語は本日、コードファースト(コードファースト)です。最初のクラス定義でモデル、その後、これらのクラスを介してデータベースを生成すると考えられています。このモードでは、新規プロジェクトの開発に適しており、それは私たちがデザインするのではなく、最初のコードにコアデータベース構造として、これらの手順を実行することができます。

       1.それから私は、この開発モデルを導入するために、簡単な例を取り上げます。私たちのニーズは二つのテーブル、テーブルやブログのコメントフォームです。ブログのコメントの対応数、ブログに対応したコメント。これは対多の関係です。のは、新しいASP.NET MVCプロジェクトを作成し、NuGetでEntityFrameworkをインストールしてみましょう。次に、2つのモデルを作成します。

パブリック クラスのブログ

{ 
    [キー] 
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
    公共のGuid同上{ GETセット; }
     パブリック 文字列のタイトル{ GETセット; }
     パブリック 文字列著者{ GETセット; }
     公共日時時間{ 得ますセット; }
     パブリック 文字列概要{ GETセット; }
     パブリック 文字列の内容{ GET; セット; } 
 
    パブリック 仮想いるICollection <コメント>コメント{ 得ますセット ; } = 新しい <コメント>リストを(); 
}
パブリック クラスコメント
    { 
        [キー] 
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
        公共のGUIDイド{ GETセット; }
         パブリック 文字列 VisitorName { 得ますセット; }
         パブリック 文字列メール{ GETセット; }
         公共日時時間{ 得ますセット; }
         パブリック 文字列の内容{ 取得しますセット; } 

        [ForeignKeyの("ブログ" )]
         公共のGuidのblogid { 得る ; セット;}
         パブリック 仮想ブログのブログ{ 得る ; セット;} 
    }

 2.次に、私たちはデータコンテキストを作成します。以下のように、コンテキストと呼ばれる新しいフォルダ、およびで新しいクラスを作成します。

 パブリック クラスTestDbContext:DbContext 
 { 
        パブリックTestDbContext() ベース名前= conString 
        { 

        } 
        #regionのこの対応関係を追加するために、関連テーブルを追加するためにデータベーステーブルを必要とパブリック仮想 DbSet <ブログ>ブログ{ GETSET ;}
         パブリックバーチャル DbSet <それコメント>それがコメント{ GETSET ;}

          
        #endregion 
 }

3.次に、我々はWeb.configファイルで、Web.configファイルデータベースで構成<構成>ノード以下のように添加した(注:のconnectionStrings位置とノード部)

  <configSections> 
    < - Entity Frameworkの構成の詳細については、訪問のhttp:!// go.microsoft.com/fwlink/?LinkID=237468 - > 
    <セクション名= " entityFramework " 
      タイプ = " System.Data.Entity .Internal.ConfigFile.EntityFrameworkSection、EntityFramework、バージョン= 6.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089 " 
      requirePermission = " " /> 
  </ configSections> 
  <のconnectionStrings> 
    <名を追加= " ConString "   れたconnectionString =を"サーバー=;データベース=テスト; UID = SA; PWD = 123456 " providerNameで= " System.Data.SqlClientの" /> 
  </のconnectionStrings>

4.加えた後、データの移行が完了しました

パッケージマネージャコンソール(パッケージマネージャコンソール)を開きます

入力1、イネーブル移行キャリッジを命令します。2、アドオン移行キャリッジリターンは、理解を容易にする名前を入力します。3.ここでは、正式な移行を実行する更新データベースは、入力し得る入力します。

おすすめ

転載: www.cnblogs.com/pengchong/p/12349563.html