我正在寻找一个解决多租户ServiceStack API层中租户的示例实现。
答案 0 :(得分:1)
如果您已经设置了Api主机并且提供了AppHostBase的实现,则可以像这样覆盖Configure方法;
public class ApiHost : AppHostBase
{
public ApiHost() : base("Service Name", typeof(ApiHost).Assembly) { }
public override void Configure(Funq.Container container)
{
//resolve your tenant here..
}
}
现在您可能需要一些代码来解析您的租户。假设你是通过子域名做的,你想要这样的东西;
string subdomain = HttpContext.Current.Request.Url.Host.Split('.')[0].ToLower();
您应该执行一些检查以确保网址的有效性。然后,只需使用您的存储库或DAL通过相关查询解析您的租户。
之后,您需要决定如何将租户转给您的服务等。问题另一次,可能是:)