Mysql.data.mysqlclient.mysqlexception: «неизвестный столбец« m.menusmenuid »в« списке полей »в asp.net core 2.1

Кто-нибудь может помочь мне решить эту проблему, пожалуйста.

Я получаю неизвестную ошибку столбца MySql, это ошибка m.MenusMenuId, но внутри MySql мой идентификатор меню - MenuId. MenuId как можно стать m.MenusMenuId? Кто-нибудь может мне объяснить, пожалуйста. Вот мой код ниже.

Menus.cs

public class Menus
{
    [Key]
    public int MenuId { set; get; }
    public string MenuName { set; get; }
    public int? ParentId { set; get; }
    public int ActiveNo { set; get; }
    public List<Menus> MenuList { set; get; } = new List<Menus>();
}

Context.cs

public class Context : DbContext
{
    public Context(DbContextOptions<Context> options) : base(options)
    {

    }

    public DbSet<Menus> menus { set; get; }
}

MenusController.cs

[Route("api/[controller]")]
[ApiController]
public class MenusController : ControllerBase
{
    private readonly Context _context;

    public MenusController(Context context)
    {
        _context = context;

        if (_context.menus.Count() == 0)
        {
            _context.menus.Add(new Menus { MenuId = 1, MenuName = "VEHICLE TRADING", ParentId = null, ActiveNo = 1 });
            _context.SaveChanges();
        }
    }

    [HttpGet]
    public ActionResult<List<Menus>> GetAll()
    {
        return _context.menus.ToList();
    }
}

MySql запрос

CREATE TABLE Menus(
    MenuId INT NOT NULL AUTO_INCREMENT,
    MenuName VARCHAR(250),
    ParentId INT,
    ActiveNo INT,
    PRIMARY KEY (MenuId)
);

Найдите во всем решении «MenusMenuId», чтобы узнать, где оно используется.

Gabriel Luci 26.10.2018 15:32

У меня нет MenusMenuId

Han Whui Teh 29.10.2018 04:48

Это должно быть где-то в вашем решении. Вы используете Entity Framework? Это может быть один из автоматически сгенерированных файлов.

Gabriel Luci 29.10.2018 12:54

Я использую EntityFrameworkCore, у меня есть только int MenuId в классе Menus, но когда я запускаю, он становится MenusMenuId.

Han Whui Teh 30.10.2018 03:19

В любом файле нажмите Ctrl + F, измените раскрывающийся список на «Все решение» и найдите «MenusMenuId». Он должен где-то быть.

Gabriel Luci 30.10.2018 13:39

Я нашел это, проблема в моем Menus.cs, у меня там есть MenuList.

Han Whui Teh 01.11.2018 10:28

Но если у меня нет MenuList, я не могу поместить детей в MenuList. Это означает, что я также не могу правильно создать динамическое меню.

Han Whui Teh 01.11.2018 10:30
1
7
613
0

Другие вопросы по теме