Radzhab
@Radzhab

Как задать кастомное называние для foreign key поля?

Есть две таблицы
class Request
    {
        public int RequestId { get; set; }
        public string Fio { get; set; }
        public string Otdel { get; set; }
        public virtual List<MTR> Mtrs{ get; set; }
    }
  class MTR
    {
        public int MtrId { get; set; }
        public string Name { get; set; }
        public virtual Request Request{ get; set; } 
    }

public class HardwareContext : DbContext
        {
            public HardwareContext() : base("HardwareContext")
            { }
            public DbSet<Request> Requests{ get; set; }
            public DbSet<MTR> Mtrs{ get; set; }
        }

При генерации EF задает кривые названия для ключей, например:

FK_dbo.MTRs_dbo.Requests_Request_RequestId
PK_dbo.MTRs

Как сделать кастомные названия для этих полей?
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Free_ze
Пишу комментарии в комментарии, а не в ответы
https://msdn.microsoft.com/en-us/library/jj591620(...
modelBuilder.Entity<Course>() 
    .HasMany(t => t.Instructors) 
    .WithMany(t => t.Courses) 
    .Map(m => 
    { 
        m.ToTable("CourseInstructor"); 
        m.MapLeftKey("CourseID"); 
        m.MapRightKey("InstructorID"); 
    });
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы