【发布时间】:2023-03-26 20:07:01
【问题描述】:
我有 asp.net webapi 项目,其中以下查询工作正常
即向数据库中添加数据并在_context.SaveChanges()之后返回新添加的ID
我正在使用 MYSQL 数据库。它也必须在 MYSQL 中工作:(
但是当我迁移 asp.net webapi code to asp.net CORE using EF CORE 新记录成功插入数据库但在 _context.SaveChanges() 之后它返回 0 作为 newId 而不是 new Id。
public partial class Student
{
public int Id { get; set; }
public string name { get; set; }
}
Student student = new Student()
student.name = "test";
_context.Add(student);
_context.SaveChanges()
int newID = student.Id ;
//在asp.net webapi中得到了自动生成的Id,但在asp.net core项目中为0。
有什么线索吗?
【问题讨论】:
-
请附上
Student的源代码。 -
添加到问题中请检查
-
Student实体的主键是什么?如果你什么都不说,它将是Id,但从你得到的错误来看,它可能是name属性吗?您可以通过在ConfigureServices中调用AddConsole和AddDebug来观察日志。 -
主键是
Id,这是自动生成的字段。没有错误,但唯一的问题是当我将 asp.net core 与 EF core 一起使用时,我没有得到新插入的 Id -
我也有同样的问题。我正在使用带有 MariaDB 数据库的 ASP NET CORE 2 和 EF 2。连接器是 Pomelo 2.0 版。
标签: c# mysql asp.net entity-framework asp.net-web-api