命名空间“System.Web.UI”中不存在类型或命名空间名称“ScriptReference”(是缺少程序集引用吗?)
Website从framework 3.5升级到framework4.0编译的时候报错:
错误 10 命名空间“System.Web.UI”中不存在类型或命名空间名称“ScriptReference”(是缺少程序集引用吗?) c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\01.web\582f5aca\78ccecad\App_Web_s2pcmnfi.0.cs 521
在网上找的同一现象的解决办法:
1. http://www.cnblogs.com/dudu/archive/2010/06/24/1764549.html
2. http://blog.csdn.net/hebingyu/article/details/7765900
发现都不好用,于是只好自己研究了,Aspx的文件编译过程是先第一步编译成cs文件,第二个再用csc编译成assembly,根据上面的错误查找编译的临时文件,C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\01.web\582f5aca\78ccecad\s2pcmnfi.out, 打开后发现csc使用的还是framework2.0的csc,C:\windows\system32> "C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe" /t:library /utf8output /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\01.web\582f5aca\78ccecad\assembly\dl3\5637b46a\4184c99d_6b04d001\ICSharpCode.SharpZipLib.dll" ......
看来原因就是这个了,试着把web.config里的compilation节点改成<compilation debug="true" targetFramework="4.0">,重新编译下成功了。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。