关于WEBSERVICE命名空间的疑问?
webservice中其中一个类开始代码(1)如下:
namespace myWebservice.server.ServiceInterface{
[WebService(Namespace = "aa.Server.WebService")]
……
}
其他的类的代码(2)开始均为如下所示:
namespace myWebservice.server.ServiceInterface{
[WebService(Namespace = "myWebservice.server.ServiceInterface")]
……
}
其中:代码(1)中程序的namespace 与webservice(Namespace =) 不一致。
代码(2)中程序的namespace 与webservice(Namespace =) 一致。
但将WEBSERVICE制作成安装程序后,客户端就访问不到代码(1)中的WEBSERVICE,报错说是服务器上找不到soapaction,为什么?
[解决办法]
WebService特性的Namespace属性声明的命令空间是服务协约的命名空间,和服务端代码的命名空间不是一回事,一般都保持一致以免混乱...
这个命令空间是在配置文件中配置的...如果你是用VS或wdsl客户端工具自动生成的客户端代理及配置文件不会发生这类问题...