我如何根据请求的URL来制作网站徽标?

时间:2016-03-01 16:04:50

标签: asp.net-mvc design-patterns

我使用ASP.Net MVC创建了产品注册页面。我需要为子公司(可能是3或4)实施相同的产品注册页面,并对网站的外观进行一些小的改动。例如,徽标将不同,页面顶部会显示一些文本。使用相同代码库的最佳方法是什么?

我能想出的最佳选择是将HttpContext.Current.Request.URL传递给视图并使用java脚本来更新它。

但是,我知道路由也是一种选择。

1 个答案:

答案 0 :(得分:1)

如果您要为所有注册页面保留相同的.cshtml视图,那么我认为创建徽标生成的部分视图可能会帮助您。

在视图模型中添加另一个变量..也许称之为子公司?

public int Subsidiary { get; set; }

然后创建一个名为_LogoPartial.cshtml的局部视图,并在辅助变量上执行if语句并根据它返回不同的徽标

@model int

@if (Model == 1)
{
   <img src="something" />
}
else if ...

然后在主视图中用

调用它
Html.RenderPartial("~/Views/Shared/_LogoPartial", Model.Subsidiary);