WCF REST Web服务 - 无法更改服务合同XML命名空间

时间:2011-07-25 10:30:00

标签: .net xml wcf web-services rest

WCF的新功能及其周围的一切。

我想将默认的http://schemas.datacontract.org/2004/07/WebService命名空间更改为基于我的基于XML的Web服务请求的其他内容,但遗憾的是无法找到解决此问题的任何内容。

我有以下内容:

[ServiceContract(Namespace = "http://www.mywebservice.com/webservice")]
....
public class WebService

但是在测试我的基于Web服务POST的方法时,我仍然无法使用新的命名空间(但旧的命名空间仍可用)用于基于XML的请求。我在这里错过了什么吗?

提前致谢!

米奇

2 个答案:

答案 0 :(得分:1)

目前尚不清楚您使用的是哪种WCF“REST”风格框架,但如果您的类标有DataContract属性,请将每个类的Namespace属性设置为您想要的命名空间。如果它们没有标记,则在您的命名空间中添加该属性,如下所示。这应该替换为您的命名空间生成的数据合同的默认命名空间。

[DataContract(Namespace="http://www.mywebservice.com/webservice")]
public class YourDataClass
{
     //something applicable...
}

答案 1 :(得分:0)

您需要在接口上的ServiceContract属性和实现类上的ServiceBehavior属性上使用命名空间:

[ServiceBehavior(Namespace = "http://www.mywebservice.com/webservice")]
public class WebService