WCF 数据契约

全局变量 2014-02-27 09:51:56

服务A 通过 wshttpbinding向 服务B 发送 Data

我在B服务断点 测试 Data是 null 不明原因。 求指定

我把服务B寄宿在 IIS上


[DataContract]
public class Data{
[DataMember]
public string A;
}
[ServiceContract]
public interface Iservice
{
[OperationContract]
string CollectData(Data data); //服务器操作
}

public class Service : Iservice
{
public string CollectData(Data data)
{
Console.WriteLine("A 是 {0};",data.A);
Console.WriteLine("B 是 {0};", data.B == null ? "null" : data.B);
Console.WriteLine("C 是 {0};",data.C);
return String.Format("A 是 {0},B 是 {1},C 是 {2}", data.A, data.B == null ? "null" : data.B, data.C);
}
}


服务A

using (Proxy proxy = new Proxy(new WSHttpBinding(), new EndpointAddress(new Uri("http://localhost:8732/WCF.Third/Service/"))))
{
MainConlose.Data data = new MainConlose.Data()
{
A="StringA"
};
Console.WriteLine(proxy.CollectData(data));
Console.WriteLine("完成发送Data");
Console.Read();
}
...全文
211 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ptrtoptr 2014-03-02
  • 打赏
  • 举报
回复
数据契约不一切会发生数据丢失,不知你客服两端的数据契约是否一直,有没有全都应用[DataMember]
全局变量 2014-03-02
  • 打赏
  • 举报
回复
全局变量 2014-03-02
  • 打赏
  • 举报
回复
引用 2 楼 ycg_893 的回复:
一,在B里面引用A代理, 二,将Data在生成独立的程序集(DLL),A与B都引用。
确实可行。但是为什么我是copy的契约和 数据契约就 null 呢?
全局变量 2014-03-02
  • 打赏
  • 举报
回复
又没有同学遇到同样的问题
ycg_893 2014-02-27
  • 打赏
  • 举报
回复
一,在B里面引用A代理, 二,将Data在生成独立的程序集(DLL),A与B都引用。

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧