Отправляет email-рассылки с помощью сервиса Sendsay

[prg] endity framework и отношения

Приветствую, всех.

Помогите, кто может! Кто может помогите.
Пытаюсь наладить связи, но воприки всему, что Я читаю ничего не получается.
Моя модель:
страна:
public class Country
{
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int CountryId { get; set; }
public string RegionName { get; set; }
public string CountryName { get; set; }
public virtual ICollection<Player> Players { get; set; }
}

игроки:
public class Player
{
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int PlayerId { get; set; }
public string PlayerName { get; set; }
public int? CountryId { get; set; }
public virtual Country Country { get; set; }
public virtual ICollection<Goal> Goals { get; set; }
}
Тут все работает и Я беспроблем получаю связь одна ко многим, однако дальше:
голы:
public class Goal
{
public int GoalId { get; set; }

public int PlayerId { get; set; }
public int Amplya { get; set; }
public virtual Player Player { get; set; }

Вот тут уже Goal.Player возвращает мне неизменный null.

Видел на msdn короткое примечание, что когда таблица имеет более чем одна связь,
последующие связи нужно настраивать во fluend api, однако как этоделать история
умалчивает.

Пытался по разному в тч:
modelBuilder.Entity<Goal>().HasRequired<Player>(g => g.Player).WithMany(p

Однако эфекту Goal.player =null;

Ответить   Tue, 3 Dec 2013 00:17:07 +0600 (#2884810)

 

Ответы:

Здравствуйте, все.

казывается нужно было еще и переопределить первичный ключ, т.к. видимо когда
юзаешь назначение связи из fluent api соотв соглашения действовать перестают
modelBuilder.Entity<Goal>().HasRequired<Player>(g => g.Player).WithMany(p =>
p.Goals).HasForeignKey(g => g.PlayerId);

С уважением, Константин.

Ответить   Tue, 3 Dec 2013 02:49:11 +0600 (#2884879)