【发布时间】:2014-09-08 21:55:27
【问题描述】:
我们在 ASP.NET 网站上使用表单身份验证,但希望升级到新的身份提供程序。目前我们正在使用数据库优先的方法,最终只想扩展我们当前的用户表(而不是 aspnet_users)以使用新的身份格式。我们正在使用 StructureMap 将我们的上下文注入到我们的业务逻辑类中。例如,我们的用户服务当前有 this 作为它的构造函数:
private readonly SiteModelContainer _context;
public UserService(SiteModelContainer context)
{
this._context = context;
}
在我们的 IoC 注册表中,我们有这个:
var ecsbuilder = new EntityConnectionStringBuilder();
ecsbuilder.Provider = "System.Data.SqlClient";
ecsbuilder.ProviderConnectionString = @"data source=***;initial catalog=***;persist security info=True;User ID=***;Password=***;multipleactiveresultsets=True;App=EntityFramework";
ecsbuilder.Metadata = @"res://*/Data.***.csdl|res://*/Data.***.ssdl|res://*/Data.***.msl";
string connectionString = ecsbuilder.ToString();
For<SiteModelContainer>().Use<SiteModelContainer>().Ctor<string>("connectionString").Is(connectionString);
For<IUserService>().Use<UserService>();
...all the rest of our services
我们还首先使用带有 EDMX 和实体框架的数据库。以前我们只是使用 ASP.NET 身份验证,因为它是开箱即用的,并且有一个单独的用户表来存储配置文件信息,但希望所有事情都在一个用户类上工作。
1)是否可以扩展我们的用户服务来处理与使用身份相关的所有事情?所以 Identity 使用我们注入到类中的相同上下文?如果是这样,我找不到任何关于它的文章?
2) 如果用户对象是在 EDMX 文件中创建的,我们能否扩展它?
谢谢
【问题讨论】:
标签: asp.net entity-framework asp.net-identity