3

我正在将单个 SQL DB 网站 (ASP.NET/VB.NET) 更改为多租户应用程序,其中每个客户端都有自己的数据库。

在旧站点中,所有 ASP 角色、登录名和提供程序都指向单个数据库。

现在我们有多个数据库,我想知道最好使用什么架构/技术。有一个数据库可以配置租户,例如公司名称、各种设置(通常在 web.config 中)以及到租户数据库的连接字符串。

我们应该在配置租户的单个数据库中拥有所有成员资格和角色,还是在每个单独的租户数据库中拥有成员资格和角色?选项 2 似乎很棘手,因为我认为 ASP.NET 只喜欢 web.config 中定义的一组 RoleProviders。

有没有人尝试过这个或有任何建议?

4

2 回答 2

2

如果您将 ASP.Net Membership 模型与内置提供程序一起使用,那么将它们放入一个 DB 是您所指出的最简单的方法。

一种选择,我没有尝试过,是在您的 web.config 文件中为每个租户定义一个提供程序。这将允许每个租户拥有自己的会员数据库,并允许您避免租户之间的用户名冲突(如果这是一个要求)。

于 2009-01-27T13:45:48.877 回答
0

您应该能够在运行时配置 ASP.NET 成员数据库连接字符串。 该线程有一些选项,包括自定义成员资格提供程序或在请求生命周期的早期通过 Global.asax.cs 更改值。

于 2013-08-09T00:45:06.617 回答