У меня прекрасные отношения один ко многим между двумя таблицами: Play
и Player
:
public class Player
{
public int PlayerId { get; set; }
public string Name { get; set; }
public ICollection<Play> Plays { get; set; }
}
public class Play
{
public int PlayId { get; set; }
public int PlayerId { get; set; }
public Player Player { get; set; }
}
modelBuilder.Entity<Play>()
.HasOne<Player>(p => p.Player)
.WithMany(p => p.Plays)
.OnDelete(DeleteBehavior.Cascade)
.HasForeignKey(p => p.PlayerId)
.IsRequired();
Можно ли пропустить свойство навигации на стороне? Например, удалить Plays
коллекцию из Player
?
public class Player
{
public int PlayerId { get; set; }
public string Name { get; set; }
}
У меня будет два специфических c вопроса:
- Можно ли вообще это сделать?
- Можно ли это сделать это, не полагаясь на соглашения EF Core - например, "Id" является первичным ключом et c ...? (Имеется в виду, что все ясно, либо в свободном API, либо в виде аннотаций)