2014-11-11 2 views
0

У меня есть приложение asp.NET с мультивизом. Я хочу что-то вроде этого:Совместимость и идентификация браузера с видом совместимости

if (браузер IE8) вид (1); вид другой (2);

Я имею в виду: если я использую Internet explorer 8, у меня есть вид 1; в противном случае я хочу посмотреть 2.

Я пытался использовать:

  • Request.UserAgent и выставиться вид 1, если Request.UserAgent содержит "MSIE 8"
  • поиска в System.Web.HttpBrowserCapabilities браузере = Request .Browser; browser.Type/Version/MajorVersion/MSDomVersion/Browsers - некоторое свойство для идентификации браузера, используемого для клиента.

Проблема в том, что я могу использовать ее (один из методов выше), только если не установлен режим совместимости. В противном случае браузер всегда будет Internet Explorer 7, даже если я использую ie8 или ie11.

В этом случае, что я могу сделать, чтобы определить браузер?

Большое спасибо

ответ

0

Этот фрагмент кода, что я использовал в прошлом, и это работает для меня без проблем. Однако учтите, что строка для нового IE 11 возвращается как InternetExplorer вместо IE. Таким образом, вы можете внести необходимые изменения

if(Context.Request.Browser.Browser == "IE" && Context.Request.Browser.MajorVersion == 8) 
{ 
    //Do Something 
} 
+0

Да, я знаю, что, но в режиме совместимости я IE7, даже если я использую Internet Explorer, 11 – user1938352

+0

Isit устанавливается автоматически каждый раз, когда вы запускаете приложение? Вы также можете обратиться к этому документу [Изменения совместимости в IE11] (http://msdn.microsoft.com/en-us/library/ie/bg182625%28v=vs.85%29.aspx) – Izzy

+0

то, что настраивается каждый раз Я запускаю свое приложение? режим совместимости? Это опция браузера, зависящая от пользовательских настроек. – user1938352