我最近建立了一个开发站点,正在使用IdentityServer3和IdentityManager,两者都来自thinktecture,IdentityManager被设计为为自己创建数据库,但可以配置为与现有的数据库一起工作。我能够将IdentityManager放入我先前使用默认模式创建的本地数据库中,但我希望将其切换到新模式。基本上,问题是我不知道如何在IdentityManager的db中设置所需的模式,在座的任何人能给出一些见解吗?
发布于 2015-08-15 09:21:27
有很多方法可以做到这一点(idsrv3是非常可配置的)。一种常见的方法是添加MembershipReboot包,继承MembershipReboot工厂类,然后在idsrv3启动期间加载新工厂。您还需要IdentityServer3.Membership project项目,该项目充当IdentityServer3和MembershipReboot之间的中间人。
在visual studio包管理器控制台中,您可以像这样添加项目:
Install-Package BrockAllen.MembershipReboot
Install-Package IdentityServer3.MembershipReboot您可以使用idsrv3示例作为如何设置类的示例。https://github.com/IdentityServer/IdentityServer3.Samples
这将为您提供所需的数据实体。然后,要将实体写入数据库,请添加MembershipReboot.EF项目并设置一个数据库连接字符串,该字符串将传递给MembershipRebootDbContext()类的重写。
Install-Package BrockAllen.MembershipReboot.Ef第一次启动身份服务器时,MembershipReboot.EF将使用实体框架自动创建数据库模式并开始在其中写入实体。
希望这能让你入门,如果这不是你想要的,很抱歉!
https://stackoverflow.com/questions/31989661
复制相似问题