全局检测浏览器并在ASP.NET MVC 3中显示不同的视图

时间:2011-11-11 11:53:42

标签: asp.net-mvc-3

我有一个ASP.NET MVC 3应用程序,我想检测用户在全球范围内使用的浏览器,例如,如果他们访问:app.com/loginapp.com/organisations等,检查仍然会发生。< / p>

我最好将这些代码放入哪个文件?代码应检查他们的浏览器是否是某个版本,如果是,则加载不同的视图和布局。

所以例如。

if(browser is ie < 9)

return ('chromeFrame');

elseif (browser is ff < 4 etc)

return ('upgradeBrowser');

有人能指出我正确的方向吗?

要澄清这不是重定向而是调用不同的视图和布局,如果浏览器不正确,那么url不会改变,它会发生在任何网址上!

2 个答案:

答案 0 :(得分:1)

自定义视图引擎,例如Scott Hanselman在this blog post中讨论的引擎,将是一个很好的方法。

答案 1 :(得分:0)

执行此操作的一种方法是使用HttpBrowserCapabilities上显示为Request.BrowserRequest

请注意,用于识别浏览器功能的.browser文件可能不会像发布新浏览器版本那样频繁更新。