我对asp.net非常陌生。我想问一下,没有.net框架,asp.net能运行吗?在没有.net框架的情况下,default.aspx还能顺利运行吗?我问这个是由于以下现有的代码,这是运行在一个虚拟主机服务器和另一个是一个私人服务器。我不确定私有服务器的细节( 2-3天后就会知道)...the代码如下...
try
{
WebRequest req = WebRequest.Create(General.SiteUrl + "/pages/" + page + ".htm");
WebResponse resp = req.GetResponse();
Stream stream = resp.GetResponseStream();
StreamReader reader = new StreamReader(stream);
content = reader.ReadToEnd();
}
catch { content = "<html><head></head><body>Content not found.</body></html>"; }虚拟主机服务器设法成功地运行“尝试”,而私人的总是显示内容而不是found....any的想法家伙?
发布于 2011-07-12 01:40:49
访问你的网站的人不需要.NET框架,他们只需要一个浏览器。
运行您的网站的服务器将需要.NET框架,因为ASP.NET是其中的一部分。
在服务器端需要.NET框架有几个原因(这些只是一些示例):
编辑
我认为你问错了问题。您可能会问,为什么代码要放在catch块中并返回catch,因为调用了catch块,所以.NET框架是正确安装的;事实上,如果没有.NET框架,它几乎不可能做到这一点。
您需要找出在try块内部抛出的导致它进入catch块的异常。您可以使用调试器、日志记录或临时删除catch块来实现这一点,以便让服务器让异常一直冒泡到顶部。例如,如果您将代码块更改为如下所示:
WebRequest req = WebRequest.Create(General.SiteUrl + "/pages/" + page + ".htm");
WebResponse resp = req.GetResponse();
Stream stream = resp.GetResponseStream();
StreamReader reader = new StreamReader(stream);
content = reader.ReadToEnd();异常详细信息将显示在浏览器中(前提是您已打开调试)。在没有try / catch的情况下会显示什么错误?
发布于 2011-07-12 01:39:57
不,如果没有.Net框架的支持,.Net代码将无法运行。因为用.Net语言编写的代码将被编译并转换为IL (中间语言)代码。
发布于 2011-07-12 01:40:59
客户端不需要.NET框架或Mono的一些变体。这是为页面提供服务的服务器的一个要求。
当数据通过HTTP发送到客户端时,它会被转换成HTML。因此,客户端需要的只是一个能够使用HTML并运行与该站点相关的任何脚本的浏览器。
https://stackoverflow.com/questions/6654083
复制相似问题