Допустим есть класс
public class Boy
{
public int BoyId {get;set;}
public string Name {get;set;}
}
public class Team
{
public int TeamId {get;set;}
public string Name {get;set;}
public ICollection<Boy> Boys {get;set;}
}
Код описан так. В каждой команде есть много ребят. То есть зная команду можно найти нужного ребенка. Но! - Но зная ребенка нельзя найти команду где он находится, это то что мне нужно. Конечно можно было бы
добавить в класс Boy
public class Boy
{
public int BoyId {get;set;}
public string Name {get;set;}
public Team Team {get;set;}
}
а еще проще будет так
public class Boy
{
public int BoyId {get;set;}
public string Name {get;set;}
public int TeamId {get;set;}
public Team Team {get;set;}
}
и вот здесь ключ
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//one-to-many Team
modelBuilder.Entity<Team>().HasMany<Boy>(s => s.Boys)
.WithRequired(s => s.Team).HasForeignKey(s => s.TeamId);
}
или что то подобное. . .
и определение куда проще.
НО это не то что хочу. А хочу что бы команда могла ссылаться к ребятам, а ребята не могли ссылаться к команде.
Я думаю такой подход(а именно односторонняя связь) есть в CodeFirst. Подскажите как оформить ключ