Asp.net MVC 3全球查询?
发布时间:2020-12-16 09:23:05 所属栏目:asp.Net 来源:网络整理
导读:我正在为两个业务组构建一个通用的Web应用程序.徽标/横幅需要根据查询字符串进行更改.例如,如果网址是http://foo.com/test?bg=a,则会显示商家组a的徽标,如果网址为http://foo.com/test?bg=b,则会显示徽标对于商业团体b.如果我只有一个动作,这不是问题.但我有
我正在为两个业务组构建一个通用的Web应用程序.徽标/横幅需要根据查询字符串进行更改.例如,如果网址是http://foo.com/test?bg=a,则会显示商家组a的徽标,如果网址为http://foo.com/test?bg=b,则会显示徽标对于商业团体b.如果我只有一个动作,这不是问题.但我有很多行动.
我可以检查所有操作的查询字符串,但必须有一个很好的方法来做到这一点.我有一种感觉,我需要做一些路由的东西,但只是不知道如何.谁能告诉我怎么做? 解决方法
您可以编写一个自定义帮助器方法,该方法基于查询字符串参数将给定的类名添加到某个div.那么你当然会在你的CSS文件中应用背景图像有不同的类定义.
例如: public static class HtmlExtensions { public static string BannerClass(this HtmlHelper html) { var bg = html.ViewContext.Controller.ValueProvider.GetValue("bg"); if (bg == null || string.IsNullOrEmpty(bg.AttemptedValue)) { // no bg parameter => return a default class return "default_banner"; } if (string.Equals("a",bg.AttemptedValue)) { return "banner_a"; } else if (string.Equals("b",bg.AttemptedValue)) { return "banner_b"; } // unknown value for the bg parameter => return a default class return "default_banner"; } } 然后在你的_Layout中你可以把这个类应用到像div或者身体这样的占位符: <div class="@Html.BannerClass()">OK</div> 这样,它将始终应用于应用程序中的所有视图. 现在剩下的就是为不同的横幅定义CSS规则: .default_banner { background-image: url('../images/default_banner.png') } .banner_a { background-image: url('../images/banner_a.png') } .banner_b { background-image: url('../images/banner_b.png') } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-4 – 使用AngularJs Web API,为什么我们需要AS
- asp.net-mvc – MVC 3 Webgrid – 你如何隐藏不想显示的列?
- asp.net-core – IClaimsTransformer的User.IsInRole(“Adm
- asp.net – 如何使用TLS电子邮件与web.config
- ASP.NET MVC3 HttpStatusCodeResult StatusDescription –
- asp.net – 在页面的css部分插入内联服务器标签的正确方法是
- asp.net – 为什么Request.Cookies在foreach循环中返回字符
- 从yield关键字看IEnumerable和Collection的区别
- 强制ASP.Net MVC Bundle以某种顺序呈现javascript文件
- asp.net-mvc – 如何在aspnet标识中设置用户名不唯一
推荐文章
站长推荐
- asp.net-mvc – 如何动态绑定kendo mvc ui dropd
- asp.net-mvc – ASP.NET向razor添加id ActionLin
- ASP.NET Response.Redirect使用302而不是301
- ASP.NET MVC,Ninject,每个请求多个构造函数的单个
- asp.net – 在Load事件中使用LoadControl的陷阱
- asp.net-core – 在发布ASP.NET Core应用程序时自
- asp.net-mvc – 动态生成sitemap.xml
- asp.net – iTextSharp单位
- asp.net-mvc – ASP.NET MVC 4如何根据角色提供不
- asp.net – 为什么IIS首次访问速度慢,但之后更快
热点阅读