我尝试使用C#和MVC 5创建我的第一个3层应用程序。我使用Identity 2作为我的身份验证系统,并使用此命令安装它:
Install-Package Microsoft.Aspnet.Identity.samples _pre
我在网站上找到了一篇我需要的文章和问题。我像这篇文章一步一步地做了。 Here is Article
我在我的项目中添加了一个类库,并在这个类库中移动了我的模型,但我在IdentityConfig.cs Startup.Auth.cs和Manage controller中有3个错误
user.GenerateUserIdentityAsync(UserManager));
错误详情在这里:
CS7036没有给出符合所需形式参数' authenticationType' ' ApplicationUser.GenerateUserIdentityAsync(UserManager,string)' PresentationLayer D:\ Projects \ Divar \ PresentationLayer \ App_Start \ IdentityConfig.cs 148 Active
当我按住Ctrl +单击GenerateUserIdentityAsync时,我移动到DataAccessLayer和这个方法。
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager, string authenticationType)
{
// Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
var userIdentity = await manager.CreateIdentityAsync(this, authenticationType);
// Add custom user claims here
return userIdentity;
}
此外,我将IdentityModels.cs名称空间更改为DataAccessLayer,但我不知道为什么我再次出错,
这是我的错误图片 enter image description here
答案 0 :(得分:0)
您需要提供authenticationType。 user.GenerateUserIdentityAsync没有超载,带有1个参数。
应该更像
string a;
user.GenerateUserIdentityAsync(UserManager, a);
只是一个小小的提示......我之前已经完成了同样的任务,并且通过查看集成智能身份的不同ORM,我获得了很多价值。也许你不会,但我认为这是最初帮助我的那个......