Можно определить «многие ко многим» с соглашениями по умолчанию или с аннотациями данных, но невозможно изменить отображение на таблицу соединений (имя таблицы и столбцы) без построителя модели.Простые многие-ко-многим:
public class Product
{
public int Id { get; set; }
public virtual ICollection<Category> Categories { get; set; }
}
public class Category
{
public int Id { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
Для использования аннотаций вы можете использовать:
public class Product
{
[Key]
public int Id { get; set; }
[InverseProperty("Products")]
public virtual ICollection<Category> Categories { get; set; }
}
public class Category
{
[Key]
public int Id { get; set; }
[InverseProperty("Categories")]
public virtual ICollection<Product> Products { get; set; }
}
Если вам нужно управлять отображением соединительной таблицы в существующей базе данных, вам нужно modelBuilder
.Аннотации данных не так мощны, как свободный API.