gpt4 book ai didi

c# - 具有多个数据库的 WebSecurity

转载 作者:行者123 更新时间:2023-11-30 18:29:37 26 4
gpt4 key购买 nike

我有一个连接到多个数据库的 c# mvc.net 应用程序。澄清一下,基于 url 的子域,应用程序将连接到特定的数据库。这是通过将 web.config 中的 defaultConnectionFactory 设置为 IDbConnectionFactory 的自定义实现来完成的。这一切都很好。

但是,我在使用 WebSecurity 时遇到了问题。所有 WebSecurity 功能(例如 Login、CreateAccount 等)都基于应用程序启动时初始化的数据库

protected void Application_Start()
{
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
//other initialisation stuf

根据 WebMatrix,InitializeDatabaseConnection 函数应在应用程序启动时调用一次,因此始终指向同一个数据库。

我想要的是,根据 httpRequest,所有 WebSecurity 的东西都将在链接到子域的数据库上完成。

有没有人对我如何应对这种情况有任何建议?我应该覆盖 WebSecurity 并根据 httpRequest 初始化它吗?或者我应该使用自定义 SimpleMembership 提供商做些什么?

提前致谢

最佳答案

总的来说,这似乎是个坏主意。但是,如果您有少量子域,则可以运行多个网站,每个网站处理一个子域。我认为服务器上的负载不会有任何不同。您将拥有能够独立启动或关闭子域的优势。当然,您必须多次部署该软件。

现在,如果您有很多子域:miamiFl.blahblah.com、NewYorkNewYork.blahblah.com...然后再看我的第一点。祝你好运:)

关于c# - 具有多个数据库的 WebSecurity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22690342/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com