Как сделать связь между моделями?

Рейтинг: 0Ответов: 0Опубликовано: 06.02.2023

Есть две таблицы:

Users - в ней хранятся пользователи

Roles - в ней хранятся должности пользователей

Установлена связь в таблице Users:

ALTER TABLE `Users`
  ADD CONSTRAINT `Users_ibfk_1` FOREIGN KEY (`RoleId`) REFERENCES `Roles` (`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT;
COMMIT;

При использовании EntityFrameworkCore не получается связать две таблицы:

using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Hosting;
using MySQL.Data.EntityFrameworkCore;
using Mysqlx.Crud;
using System.ComponentModel.DataAnnotations.Schema;
using System.Reflection.Metadata;

namespace WebApplication3
{
    public class DatabaseContext : DbContext
    {

        public DbSet<User> Users { get; set; }
        public DbSet<Role> Roles { get; set; }

        public DatabaseContext(DbContextOptions<DatabaseContext> options) : base(options) { }

  

    }
 
 

    public class User
    {
     
        public int Id { get; set; }

        public string? Name { get; set; }

        public int RoleId { get; set; }
   
        public virtual Role Role { get; set; }
    }

    public class Role
    {
        public int Id { get; set; }
        public string Name { get; set; }

    }


}

Таблица Users

введите сюда описание изображения

Таблица Roles:

введите сюда описание изображения

Ответы

Ответов пока нет.