1

このモデルまたはエンティティ テーブルを単独で継承する必要があるという点で、2 つのデータベースを使用しています。このため、エンティティフレームワークで特定のクラスまたはエンティティテーブルのデータベース名を指定する方法。可能です?

Database Name: "Test1"

public class User : BaseEntity
{        
    public string Email { get; set; }
    public string Password { get; set; }
}

このモデルを別のモデルのナビゲーション プロパティとして設定する方法。お気に入り、

Database Name: "Test2"

public class Test: BaseEntity
{
  public int UserId { get; set; }

  public virtual User User { get; set; }
}

public class BaseEntity
{
   public int Id { get; set; }
}
4

2 に答える 2

2

Entity FrameworkDbContext は 1 つの Database を処理できます。DbContext次に、2 つのデータベースに対して2 つの が必要です。


アップデート :

そうしないことをお勧めします。言い換えれば、あなたのデータベースとあなたのモデルは調和していなければなりません"私はこの言葉が大好きです:)"

それ以上のものは、サービスクラス「レイヤー」にあるはずです。

したがって、あなたの例ではUserService、ユーザーを取得するクラスがあり、クラスでこのロジックを実行しないと想定していますTest

注意すべきもう 1 つの点: モデルがこのように接続されている場合、データベースは 1 つだけである必要があります。

于 2012-07-17T11:40:13.957 に答える
0

inheritあなたがクラスからあなたのクラスに行きたいならUser、これはそれがどのようであるかです

public class Test: User 
{
   public int UserId { get; set; } 
}

これで、クラスには、それ自体のプロパティとともにTest、基本クラス()のすべてのプロパティが含まれるようになります。UserUserId

于 2012-07-17T12:28:16.960 に答える