我尝试从头开始用ASP.net Identity编写MVC应用程序.
为此,我遵循了Ben Foster的两个教程(
Tutorial Part1和
Tutorial Part2)
但我坚持第二个教程 – 配置UserManager.以下行对我不起作用:
// configure the user manager
UserManagerFactory = () =>
{
var usermanager = new UserManager<AppUser>(
new UserStore<AppUser>(new AppDbContext()));
...
}
Visual Studio强调
new AppDbContext()
并向我显示以下消息:
Argument type “MyProject.DbContext.AppDbContext” is not assignable to parameter type “System.Data.Entity.DbContext”
我不明白为什么它在我的解决方案中不起作用,因为我完全遵循了教程.我的AppDbContext看起来像:
namespace MyProject.DbContext
{
using MyProject.Models;
using Microsoft.AspNet.Identity.EntityFramework;
public class AppDbContext : IdentityDbContext<User>
{
public AppDbContext()
: base("DefaultConnection")
{
}
}
}
我的用户类:
namespace MyProject.Models
{
using Microsoft.AspNet.Identity.EntityFramework;
public class User : IdentityUser
{
public string Name{ get; set; }
}
}
我还从Ben下载了源代码并尝试运行它并且它没有任何问题.我认为我的所有文件都不在同一个文件夹中没有任何区别?!
我希望你能帮助我.如果一个简单的教程不能正常工作,那真的很令人沮丧……
问候,winklerrr
最佳答案 我通过删除与owin和ASP.net Identity有关的所有引用并再次重新添加它来解决了这个问题.
我认为,问题是由引用的dll和实际使用的dll之间的差异引起的……(与包管理器控制台一起玩了很多.)