相关疑难解决方法(0)

DB-First与ASP.NET Web API 2 + EF6的身份验证混淆

我需要为现有的MySQL数据库创建一个Web API C#应用程序.我已经设法使用Entity Framework 6将每个数据库表绑定到RESTful API (允许CRUD操作).

我想实现一个登录/注册系统(这样我以后就可以实现角色和权限,并限制某些API请求).

我必须使用的MySQL数据库有一个用户表(称为user),其中包含以下不言自明的列:

  • id
  • email
  • username
  • password_hash

似乎事实上的身份验证标准是ASP.Net Identity.我花了最后一小时试图弄清楚如何使Identity与现有的DB-First Entity Framework设置一起工作.

如果我尝试构造ApplicationUser存储user实例(MySQL数据库中的实体)的实例来检索用户数据,我会收到以下错误:

实体类型ApplicationUser不是当前上下文的模型的一部分.

我假设我需要在我的MySQL数据库中存储身份数据,但找不到任何有关如何执行此操作的资源.我已经尝试完全删除ApplicationUser类并使我的user实体类派生IdentityUser,但调用UserManager.CreateAsync导致LINQ to Entities转换错误.

如何在具有现有user实体的Web API 2应用程序中设置身份验证?

c# asp.net entity-framework ef-database-first asp.net-web-api2

14
推荐指数
2
解决办法
8458
查看次数