基于样式表的动态内容切换

时间:2010-08-16 08:29:24

标签: asp.net vb.net iis-7 stylesheet

我正在为我的网站制作一个新设计,但我想保留旧设计并可能在两者之间切换。

不幸的是,我更改了母版页上的内容(幸运的是我有备份)。 我想的是为每个主题保留单独的主文件,然后根据加载的样式表确定哪一个服务器。

我能想到的唯一方法是在网站上保留一个“{1}}行的”设置“文件。根据那里的数字,服务器将提供正确的母版页。

或者,可能更容易做类似的事情,但不要提供完整的不同母版页,而是设置要使用的特定样式表。

在这两种情况下,我都需要帮助实际在服务器上完成工作。我可以读取一个文本文件(甚至在为安全起见之前和之后对文件进行加密/解密),但实际上根据读取的内容向服务器提供指令是我丢失的地方。

任何建议都将不胜感激。

2 个答案:

答案 0 :(得分:0)

您是如何决定应加载哪种风格的?

母版页应该决定加载哪个样式表而不是相反。

答案 1 :(得分:0)

您如何允许用户切换样式?我会将它作为查询字符串参数传递给被调用的第一个页面,然后将其添加到Session中。完成后,在所有页面的Page_PreInit事件中都有以下代码;

void Page_PreInit(Object sender, EventArgs e) 
{ 
 if(Session["masterpage"] != null) 
 { 
   this.MasterPageFile = (String) Session["masterpage"]; 
 } 
}

这样,每个MasterPage都有自己的样式表。

您还可以将母版页名称存储到cookie中。这将允许用户在会话过期后继续使用他们选择事件的样式。