处理不同主机名的 Web 表单应用程序

Web forms application handling different hostnames

我有应用程序的 Web 窗体项目,客户希望在多个版本(基本版、增强版和专业版)中完成同一个项目。所以基本上,当有人在 url www.basicdonations.com 时,相同的代码将处理就好像请求是从 www.plusdonations.com 或 www.prodonations.com 发送的一样,但是他们处理定价的方式和其他的东西是根据网站的水平适合。

在哪里设置处理这个? Web 窗体项目将如何知道并区分哪些主机名发送了请求,以及将逻辑放在哪里来决定显示哪个页面。

我想把每个页面设置成三个不同的版本,它们很相似,但有一些变化。是否有更好的选择,比如让部分代码动态决定页面的哪些部分将被渲染?

您可以使用 Request.Url.Host 来区分网站。类似于:

 switch (Request.Url.Host)
        {
            case "www.plusdonations.com":
                //setup pricing for plus
                break;
            case "www.prodonations.com":
                //setup pricing for pro
                break;
            case "www.basicdonations.com":
                //setup pricing for basic
                break;
            default:
                //handle other hosts
                break;
        }