每种类型的用户登录都有3个概念。图像由基于主机头的查找表控制。我的意思是,有几个域名指向同一个IP/Web示例,该示例基于阅读主机头提供内容。我们现在所做的是将所有HTML(而不是代码)存储在一个表中,该表由主机头查找引用。有人能在这个要求上指导我吗?谢谢
ncgqoxb01#
可能有更好的方法来处理多租户,但让我们假设您无法更改其中任何一个。
string domain = HttpContext.Current.Request.ServerVariables["HTTP_HOST"];
您可以将此domainMap到客户ID上,并将其存储在用户的cookie中,并根据需要进行Map,或者直接使用domain进行表查找。
domain
ctehm74n2#
Request.Url.Host
这将为您提供域名,例如:“www.example.com“。我建议存储包括“视图名称”和“域”的记录。然后,在您的操作中,我会想象这样的内容:
var record = db.HostRecords.Where(r => r.Domain == Request.Url.Host).FirstOrDefault(); var view = "Page.cshtml"; if (record != null){ view = record.ViewName; } return View(view);
2条答案
按热度按时间ncgqoxb01#
可能有更好的方法来处理多租户,但让我们假设您无法更改其中任何一个。
您可以将此
domain
Map到客户ID上,并将其存储在用户的cookie中,并根据需要进行Map,或者直接使用domain进行表查找。ctehm74n2#
这将为您提供域名,例如:“www.example.com“。我建议存储包括“视图名称”和“域”的记录。然后,在您的操作中,我会想象这样的内容: