前面曾写过关于把cs编译成dll文件的文章([传送门](http://blog.csdn.net/abandonship/archive/2006/02/23/607247.aspx)),这里补充除原来两种情况外的第三种情况:当cs文件中含有调用WebService编译时,出现“找不到类型或命名空间名称……<是否缺少using指令或程序集引用>”。
解决办法:
1. 浏览器中输入WebService的访问地址[http://www.BanLao.com/BL.asmx?wsdl](http://www.BanLao.com/BL.asmx?wsdl),保存到本且后缀为*.wsdl。
2. 打开vs的命令提示工具,编译刚才的BL.wsdl文件:wsdl BL.wsdl,得到一个BL.cs的代理类文件。(编译时路径指向*.wsdl所在目录)
3. 将得到的BL.cs使用vs命令提示工具编译为BL.dll文件。(csc /out: BL.dll /t:library BL.cs)
4. 改写原需打包的cs文件,原来调用WebService的地方,可以引用新生成的BL.dll。
5. 再次编译这个cs文件。由于该文件引用了bin目录下的另一个dll文件:
csc /out: bin/Service.dll /r: bin/BL.dll /t:library Service.cs
其中,Service.dll就是新生成的dll文件。
- 前言
- 【“/”应用程序中的服务器错误】之IL 格式不正确
- 【验证您是服务器上&quot;Debugger users&quot;组的成员】的解决方案
- 【无法在web服务器上启动调试。与Web服务器通信时出现身份验证错误】的解决方案
- 处理【检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败】
- win7 IIS7.0下建立虚拟目录 以解决打开vs2003的办法
- 【“/”应用程序中的服务器错误。】之 分析 EntityName 时出错
- 【&quot;/&quot; 应用程序中的服务器错误】之找不到可安装的 ISAM
- 处理【aspnet_merge.exe”已退出,代码为1。An error occurred when merging assemblies: 索引超出了数组界限。】
- win7 IIS7.0 【IIS 管理器无法验证此内置帐户是否有访问权】
- 解决vs2005不能调试ASP.NET程序
- 解决win7下安装SQL2000时【以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机!】
- WebService中使用DataTable造成&quot;无法序列化&quot;的解决办法
- 处理【由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面】
- 处理【试图运行项目是出错:无法在Web服务器上启动服务。您不具备此应用程序的权限。】
- 解决在IIS7.0上部署ASP.NET1.1站点时【“/”应用程序中的服务器错误。无法识别的配置节“system.webServer”】的问题
- 处理【试图运行项目时出错:无法启动调试,没有正确安装调试器。请运行安装程序安装或修复调试器。】
- 处理【GDI+ 中发生一般性错误】
- 解决vs2005下Global.asax缺少cs文件的使用不便
- 处理【System.Data.SqlClient.SqlError:媒体集有2个媒体簇,但只提供了1个。必须提供所有成员。】
- c#把cs文件编译为dll文件(二) 处理带有调用WebService方法的cs
- win7+IIS7下处理【检测到在集成的托管管道模式下不适用的ASP.NET设置】
- php中使用split()出现Warning: split(): REG_EMPTY
- php中使用异步调用获取数据时出现【由于出现错误 c00ce56e 而导致此项操作无法完成】
- php【Warning: imageftbbox(): Could not find/open font in……】的问题
- 处理PHP mysql_query执行超时 【Fatal error: Maximum execution time of 300 seconds exceeded in……】
- 处理【php-cgi.exe - FastCGI 进程超过了配置的请求超时时限】
- 处理【从客户端中检测到有潜在危险的 Request.Form值】