Недавно узнал что в ASP.NET можно назначать разные значения свойствам для элементов управления и директив. Например, в директиве @ Page можно написать: <%@ Page MasterPageFile="~/Default.master" ie:MasterPageFile="~/Default_ie.master" %>. Такая запись указывает, что для MSIE будет использоваться отдельный MasterPage и другой для всех остальных. Префикс ie в данном случае называется device identifier и соответствует значению атрибута id из файлов *.browser. Они находятся в папке %systemroot%\Microsoft.NET\Framework\v2.0.50727\CONFIG\Browsers\. При необходимости можно создать свой browser файл и выложить его в папку App_Browsers в корне приложения.
Подобный синтаксис может использоваться в директивах @ Control и @ Master, а также для свойств элементов управления. Смотрите примеры в блоге Скота Гатри (Scott Guthrie). Документация этой возможности есть в статье MSDN ASP.NET Device Filtering Overview.