首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >asp.net web表单中的多租户

问asp.net web表单中的多租户
EN

Stack Overflow用户
提问于 2012-03-05 11:37:14
回答 1查看 1.5K关注 0票数 1

我在visual 2010中创建了一个新的web窗体应用程序,只有两页Default.aspx和About.aspx。我想要的是,当我在中调试应用程序并输入http://company1.localhost:1023时,它应该只显示带有This is default page for company1消息的默认页面。我如何使用url路由来完成它,而不是在IIS中执行设置?

注意:我知道多租户是一个很大的词,不应该用于这样简单的场景,但我的需求很简单。对于没有扩展点的每一家公司,我只运行相同的应用实例。这个问题也可以说是如何以编程方式创建子域。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-05 12:52:50

为此,您必须正确配置IIS (或者DNS)。例如,您的所有子域都应该由IIS中指定的网站处理.通常,如果只有单个网站,则可以将IIS配置为处理所有主机标头,但对于多个网站,IIS通常按主机头配置为不同。因此,对您来说,正确的配置是重要的部分。

一旦您到达正确的网站,资源处理将由IIS元库完成.因此,在这种情况下,它将重新定向到配置好的站点默认资源。如果存在资源名称,则扩展(htm,aspx)将决定处理。Aspx扩展将由ASP.NET处理,然后您所需要做的就是查找当前的主机头并做出相应的决定。例如,

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    if (request.Url.HostNameType == UriHostNameType.Dns)
    {
       var hostParts = Request.Url.Host.Split('.');
       // you may validate if sub-domain name is present or not
       lblMessage.Text = "This is default page for " + hostParts[0];
    }  
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9565961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档