-1

SQL ServerデータベースからEntity Frameworkのモデルとしてテーブルを生成する状況がありますが、データベース内の別のテーブルと関連しているため、モデル内でもこのような2番目のテーブル名のプロパティになりますEntity Frameworkでプロパティの名前を変更するか、エイリアス名を付けますか?

public virtual ICollection<Table2> Table2 { get; set; } 

問題は、Ajaxによって呼び出されるMVCのコントローラ内でデータを動的に取得することです。その結果、Ajaxの引数で2番目のテーブルの名前を公開する必要があります。別のクラスTable1Metadataを作成してMetadataType属性を使用してTable2という名前を変更する方法はありますか?

+0

に再度変更すること私はあなたがそれをすることができないと言わなければならない。しかし、あなたがそれを意味するものではない場合、あなたがもっと望むものを説明してください –

答えて

0

あなたは、テーブル名を変更するには流暢なAPIを使用することができます。

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
{ 
    modelBuilder.Entity<Table2>().ToTable("MyCustomTable2Name"); 
} 

この方法は、あなたのDbContextでオーバーライドすることができます。

0

ここにクラスがあります。

public partial class Table1 
     { 
      public Table1() 
      { 
       this.Table2= new HashSet<Table2>(); 
      } 
      public virtual ICollection<Table2> Table2{ get; set; } 
     } 
    } 

は、私はプロパティTable2の名前を変更することができるようにしたいが、私は、データベースから再びそれを再生成する場合は、動的関係を変更する意味場合は、メタデータクラスで、それは文句を言わないTable2

関連する問題