ASP.Net网站的哪些功能仅在Internet Explorer浏览器中可用?

时间:2013-08-25 23:05:13

标签: asp.net internet-explorer browser

我提议使用ASP.Net技术构建我的商业网站。

我担心这种方式会让我陷入微软的网络浏览器IE中。

所以我的问题是,ASP.Net网站有哪些与其他网络浏览器不兼容的要点,例如Chrome,Firefox,Safari和Opera?

换句话说,什么是只能在IE上运行的东西?

问题摘要

  1. 将较旧的.NET Framework与最新的浏览器一起使用(.Net Framework低于4.5版和IE10,IE11;所有版本都是本答复时的最新版本)
  2. 编写特定于IE的客户端站点JavaScript代码,但这与ASP.Net无关;它更像是开发者IE绑定的编码习惯
  3. 使用Ajax进行服务器控制;多年前回到2005年但不是现在的2013年

2 个答案:

答案 0 :(得分:3)

ASP.NET检测浏览器功能(使用CSS,JavaScript等),并从下层和上层为各自的浏览器生成适当的HTML。

如果您使用最新的浏览器(例如IE10,IE11 - 本回答时的最新版本)使用较旧的.NET Framework(在此答案时最新版本为4.5),则可能遇到的唯一问题。然后它可能无法识别浏览器并生成错误的HTML / JavaScript。

否则非MS浏览器访问和查看ASP.NET网站没有问题。

<小时/> 附:当然,如果您编写特定于IE的客户端站点 JavaScript代码,您可能会遇到问题,但这与ASP.NET无关

答案 1 :(得分:1)

首先,我想指出,仅仅因为你使用asp.net并不意味着你必须使用Microsoft提供的服务器控件。您可以使用第三方控件,也可以自己编写。或者您可以使用最小的服务器控件来支持主题,母版页等等。并在您自己的框架中执行其他所有操作。

这里的观点是“使用asp.net”可能意味着很多不同的事情。

话虽如此,如果您的开发人员要使用股票asp.net控件(或者可能是少数第三方控件),那么您应该明白asp.net不依赖于任何特定的浏览器,但它可以绑定到特定的浏览器功能

ASP.NET使用称为browsercaps文件的东西,它通过用户代理字符串识别浏览器,这告诉asp.net浏览器支持哪些功能。比如什么级别的JavaScript,或者什么级别的CSS等。如果出现新的浏览器,你可能必须更新这个browsercaps文件才能支持它作为“高级”浏览器。下层浏览器在没有特殊功能的情况下呈现。

IE不受这些检测的青睐,并且它不会以任何特定方式将您绑定到IE,除非您的开发人员编写IE特定代码或HTML。

一般情况下,这些不会在普通的asp.net网站上发挥作用,除非你需要做高级的事情,比如Ajax,并且你正在使用ASP.NET Ajax服务器控件。

这很大程度上取决于“开发人员如何实现”。确保您向开发人员指定要求完全兼容浏览器,并指定要支持的浏览器版本。了解支持旧浏览器可能会花费更多的钱,因为旧版浏览器有更多的怪癖和不兼容性。

所以回答你在标题中提出的问题:

ASP.NET没有仅在Internet Explorer中可用的功能

但是,有些功能在某些浏览器中是不可用的(例如像Lynx这样的纯文本浏览器......显然),特别是旧浏览器或某些移动浏览器等。