【发布时间】:2015-12-03 14:44:22
【问题描述】:
在我的 asp.net MVC 应用程序中,我使用实体框架和身份进行用户身份验证。所以我的 DbContext 类如下所示(有效):
public class PropertyContext : IdentityDbContext<AppUser>
{
public PropertyContext() : base("name=PropertyBDConnection") { }
...
}
我将一个字符串传递给 PropertyContext 的基本构造函数。因此,我可以假设 IdentityDbContext 有一个以字符串为参数的构造函数。
但是在 asp.net 身份 (here IdentityDbContext.cs) 的 github 存储库中,我发现了以下内容-
public class IdentityDbContext<TUser> :
IdentityDbContext<TUser, IdentityRole, string>
where TUser : IdentityUser
{ }
根本没有构造函数。当然我错过了一些东西或看错了地方。
【问题讨论】:
-
您为
AppContext提供的代码在各种情况下都是无效的 - 显然它是不是从您的真实代码中复制和粘贴的,我们无法判断是否实际代码仅在不相关的地方或关键部分有所不同。请复制并粘贴一个演示问题的实际类。 -
您看到的差异是因为您在不同版本的 Asp.net(必须是 4.x)中使用先前版本的
Identity。您在 github 上引用的代码是最新的Asp.net 5版本,这就是为什么您会看到如此大的差异。 -
@vendettamit 我感觉我找错地方了。
-
如果您还可以显示您正在使用的 nuget 包 - 完整的版本号 - 会有所帮助,以便我们可以帮助您找到实际的源代码。
-
值得仔细检查 - 查看您的 NuGet 引用。但希望这足以让有人帮助你。 (这不是我的专业领域。)
标签: c# entity-framework asp.net-identity