.net 从WCF客户端调用ServiceStack服务
我有一个使用WCF开发的旧SOAP服务,还有一些.NET客户端使用WCF调用该服务 我使用ServiceStack框架创建了一个新服务,该框架实现了相同的功能。.net 从WCF客户端调用ServiceStack服务,.net,wcf,
servicestack,.net,Wcf,
servicestack,我有一个使用WCF开发的旧SOAP服务,还有一些.NET客户端使用WCF调用该服务 我使用ServiceStack框架创建了一个新服务,该框架实现了相同的功能。 是否可以在不更改客户端代码或配置的情况下从WCF客户端调用ServiceStack 我可以对ServiceStack服务进行任何必要的更改 编辑: 向前迈出的一小步。 将正确的命名空间添加到AssemblyInfo.cs并将“/soap11”附加到URL后,最终将调用正确的服务方法,但不会传输参数数据 客户端中调用的WCF代理方法使用一
是否可以在不更改客户端代码或配置的情况下从WCF客户端调用ServiceStack 我可以对ServiceStack服务进行任何必要的更改 编辑:
向前迈出的一小步。
将正确的命名空间添加到AssemblyInfo.cs并将“/soap11”附加到URL后,最终将调用正确的服务方法,但不会传输参数数据 客户端中调用的WCF代理方法使用一个参数“e”,该参数是一个具有一些字符串和int属性的类。
通过电线发送的SOAP正文以以下内容开头:
<MyMethod xmlns="http://mynamespace">
<e>
<PropertyA xmlns="http://schemas.datacontract.org/2004/07/MyProject.Service.Entities">somestring</PropertyA>
<PropertyB xmlns="http://schemas.datacontract.org/2004/07/MyProject.Service.Entities">123</PropertyB>
如何在服务中添加正确的属性命名空间定义?是否需要?将正确的名称空间添加到参数类中的DataContract属性解决了问题
[DataContract(Namespace = "http://schemas.datacontract.org/2004/07/MyProject.Service.Entities")]
public class EventData
{
[DataMember] public string ProperyA { get; set; }
[DataMember] public int ProperyB { get; set; }
...
}
[DataContract(Namespace = "http://schemas.datacontract.org/2004/07/MyProject.Service.Entities")]
public class EventData
{
[DataMember] public string ProperyA { get; set; }
[DataMember] public int ProperyB { get; set; }
...
}