私は最初のasp.netmvc3アプリケーションを作成しています。私はコードファーストの方法論を使用しています。私は次のモデルを持っています:
public class FootballGame
{
[Key]
public Guid id_FootballGame { get; set; }
[ForeignKey("FootballGame")]
public Guid? FK_id_FootballGame { get; set; }
public virtual FootballGame PreviousFootballGame { get; set; }
[ForeignKey("FootballTeam")]
public Guid id_FootballTeam_owner { get; set; }
public virtual FootballTeam FootballTeamOwner { get; set; }
[ForeignKey("FootballTeam")]
public Guid id_FootballTeam_guest { get; set; }
public virtual FootballTeam FootballTeamGuest { get; set; }
}
public class FootballTeam
{
[Key]
public Guid id_FootballTeam { get; set; }
public string teamName { get; set; }
}
そして、私は次のクラスを持っています:
public class EFDbContext : DbContext
{
public EFDbContext() : base("name=EFDbContext") { }
public DbSet<FootballTeam> FootballTeams { get; set; }
public DbSet<FootballGame> FootballGames { get; set; }
}
残念ながら、例外があります。
タイプ「Bd.Domain.FootballGame」のプロパティ「FK_id_FootballGame」のForeignKeyAttributeが無効です。ナビゲーションプロパティ「FootballGame」が依存型「Bd.Domain.FootballGame」で見つかりませんでした。Name値は、有効なナビゲーションプロパティ名である必要があります。
私はこれらの行を削除しようとしました:
[ForeignKey("FootballGame")]
public virtual FootballGame PreviousFootballGame { get; set; }
ただし、表示される別の例外:
タイプ「Bd.FootballGame」のプロパティ「id_FootballTeam_owner」のForeignKeyAttributeが無効です。ナビゲーションプロパティ「FootballTeam」が依存型「Bd.FootballGame」で見つかりませんでした。Name値は、有効なナビゲーションプロパティ名である必要があります。
お役に立てれば幸いです。よろしく、デニス。