0

私は最初にEF5コードを使用しており、次のようなタイプがあります:

    public class Region
    {
      public int Id { get; set; }
      //...
    }

    public class Destination : Region
    {
      public virtual Origine Origine { get; set; }
      //...
    }

    public class Origine : Region
    {
      public virtual IList<Destination> Destinations { get; set; }
      //...
    }

私のEFコンテキストタイプ:

public class JobAndPopulationContext : DbContext
{
    public DbSet<Region> Regions { get; set; }
}

次のような簡単なリストを作成して、すべての地域を選択したいと思います。

context.Regions.ToList();

私はこの奇妙なエラーメッセージを受け取りました:

リレーションシップ マネージャーは、指定されたリレーションシップ「JobAndMigration.Repository.Origine_Destinations」のソース ロール「Origine_Destinations_Target」のタイプ「JobAndMigration.Classes.Destination」と互換性のないタイプ「JobAndMigration.Classes.Origine」の所有者で定義されました。 '。

そのエラーはどういう意味ですか?
どうすればこの問題を解決できますか?

4

1 に答える 1

0

ここでさまざまな継承タイプを見てください

TPT の場合、コンテキストを次のように変更することを検討してください。

public class JobAndPopulationContext : DbContext
{
  public DbSet<Destination> Destinations { get; set; }
  public DbSet<Origins> Origin { get; set; }  
}
于 2013-04-17T21:51:15.087 に答える