我们已经实现调用一个远程服务在我们的ASP.NET站点的一些SOAP客户端代码。实施已基本通过使用Visual Studio进行“添加Web引用”向导中,加入适量的“使用remote.service.namespace”的代码和调用服务。

代码可以完美运行在本地(从Visual Studio),但缺少的程序集引用错误失败生产Web服务器上:

  

CS0246:类型或命名空间名称“remote.service”找不到(是否缺少using指令或程序集引用?)

我有一个鬼鬼祟祟的怀疑,我是不是正确部署的一切,也许有些人能指出的是,我很想念那里?

谢谢!

其他信息:

项目是一个网站。

ASP.NET 2.0版安装并同时用作开发框和生产服务器上的一个目标。

通过WSDL.EXE产生

代理文件部署到网站,相同的文件夹,其中的页面驻留的根文件夹。用于代理类生成全局命名空间(默认)。

有帮助吗?

解决方案

如果这是一个网站的项目,则代理文件应驻留App_Code文件夹内

其他提示

您提到的代理DLL被放置在“网站,其中该页面所在的根文件夹”。

您应该将DLL的“bin”文件夹内。如果该文件夹不存在创建它。

在.NET Web服务客户端堆栈不运行时生成的代理客户端的(从由Wsdl.exe用/ svcutil.exe的生成的类注释)。这个生成的文件通常在您的服务器临时目录(有一个主窗口树下的地方)的一个结束。问题是,ASP.NET用户帐户没有权利写这个特殊的临时目录,但它写入文件时没有注意到,所以你最终错误与它试图加载生成文件备份。您可以根据您的服务器的确切安装顺序的情况下结束。一旦你找到合适的目录,你可以简单地固定在目录中的NTFS权限来解决问题。

你的App_WebReferences文件夹及其所有内容复制到服务器?

您是否ASP.NET网站其他地方工作的?

您的网站是否针对3.5和3.5可能不会在生产服务器上安装?

这是一个网站,或Web应用程序项目?我敢打赌,这是一个网站。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top