我有一个 Default.aspx 页面,它处理Page_Load
所有逻辑事件并呈现页面。
所以,有一个html页面。但是,我有两个主要的 CSS 文件,用户可以在这两个主题之间进行选择。
问题是,它太复杂了,所以我想做的是创建两个Page
s,一个是View
s,一个Model
是处理请求并路由到正确View
的 s 。
这种情况的最佳实践是什么?
谢谢。
编辑:
主题之间的差异不在于颜色/大小,而在于元素的布局等。因此,在这一点上,我有必要转移到两个不同的页面。
我有一个 Default.aspx 页面,它处理Page_Load
所有逻辑事件并呈现页面。
所以,有一个html页面。但是,我有两个主要的 CSS 文件,用户可以在这两个主题之间进行选择。
问题是,它太复杂了,所以我想做的是创建两个Page
s,一个是View
s,一个Model
是处理请求并路由到正确View
的 s 。
这种情况的最佳实践是什么?
谢谢。
主题之间的差异不在于颜色/大小,而在于元素的布局等。因此,在这一点上,我有必要转移到两个不同的页面。
最佳做法是切换 css 文件,而不是视图。如果您有 2 个 css 文件,使用具有 100 个页面的解决方案,您将创建 200 个视图?如果您想有 3 个主题可供选择怎么办?
CSS 不是您网站的内容属性,它只是一种样式。您真的不应该为不同的样式设置不同的路线,这是 SEO 自杀。
这是一个很好的例子,你的布局应该如何在 MVC3 中使用 razor http://weblogs.asp.net/scottgu/archive/2010/10/22/asp-net-mvc-3-layouts.aspx
还有一件事——模型真的不应该知道关于视图的任何事情。这是控制器的工作。这就是 MVC 的全部意义——分离。
我希望我理解正确,但这对你不起作用:
<link href="<%=Session["CssFile"].ToString() %>" rel="stylesheet" type="text/css" />