网站首页 | 站长论坛 | 免费空间申请 | 站长下载 | 站长博客 | 商业主机 | 免费空间推荐站点 | 免费空间排行榜 | 我们知道
发新话题
打印

[02-03] 让asp.net顺利运行在.net Framework 1.0和1.1

[02-03] 让asp.net顺利运行在.net Framework 1.0和1.1

让asp.net顺利运行在.net Framework 1.0和1.1般来说,当一个组件或者应用程序在同一台电脑中升级的时,旧版本就会被删除或者被替换成新版本。如果新版本不兼容前一版本,就会引起一连串的问题。但是.net Framework1.1吸取了前一次的教训,她在设计之初就考虑到了兼容性的问题。这样一台机器中就可以运行多个版本.net Framework,不同的应用程序可以选择自己需要的.net Framework来运行。
但是,在默认状态下安装.net Framework.1.1,所有现的Asp.net应用程序都会被配置成使用最新版本的.net Framework即1.1。如果您不想这样做,而是要保持现有的状态不变,其实也很简单,只要在安装Dotnetfx.exe时加个参数就行了。如在命令行下输入其他的Dotnetfx.exe /c:"install /noaspupgrade”都不变按着提示来就可以了。注意这里的”c:”不表示路径只是参数,Dotnetfx.exe还有其他的参数,你可以这样Dotnetfx.exe/?来看其他的隐含参数。
这解决了第一个问题,但是你接着要问“我在运行程序的时候怎么选择.net framework的版本阿?这就不得不谈一下asp.net的运行机制了,深的不谈,只讲我们需要的。*.aspx文件在执行时,IIS会根据该文件所在的虚拟目录的映射属性来找.net framework所在目录里的相应程序来执行。我们要做的就是,告诉IIS应该把该*.aspx文件映射到那个版本的.net framework中。不同版本的.net framework所在的目录名随其内部版本号的不同而不同,如1.0的是Microsoft.NET\Framework\v1.0.3705而1.1的是Microsoft.NET\Framework\v1.1.4322。那么我们怎么告诉IIS呢?用嘴肯定是不行的,用微软给我们准备好的工具吧――Aspnet_regiis.exe。她位于.net framework目录下,不同framework版本的Aspnet_regiis.exe也是不同的。这个程序提供了两个参数可供使用,一个是”-s”表示为指定路径及其子目录设置脚本映射,另一个”-sn”表示只为指定路径设置脚本映射。这里指定的路径是指文件在IIS中的路径,具体格式是这样“Aspnet_regiis.exe –s W3SVC/1/ROOT/你的虚拟目录名”。这里需要注意的是,原文中有一点错误,他文字中写的格式不对,但是图片上格式是正确的。如果你还不放心,可这样“aspnet_regiis/?”看看到底是怎么回事。
第三个问题,当前的工作在那个版本的.net之上。在IIS中,选择要查看的目录,右键选属性,在配置里,选择.aspx那一行,点击编辑,看一下framework的版本就好了。
至于.net1.1SDK由于不是装在1.0那个目录里,所以不用担心,只是装快速入门教程会有点麻烦,因为他们的虚拟目录名是一样的。但是也不会覆盖原来的文件,原因很简单,不在同一个目录里。你只要先将1.0的快速入门教程改一下名就行了。说句实话,从快速入门教程中我没看出与1.0有什么大的区别,MSDE数据库可以直接使用1.0的,只是多了个移动工具包那一项。这只是asp.net在两个版本共存的方法,至于windows应用程序那就不知道了!
39元注册顶级域名,赠送100M全能空间,支持ASP、FTP、PHP,可绑顶米http://idc.lhsell.com/agent

TOP

发新话题