【发布时间】:2013-10-18 20:43:34
【问题描述】:
我有个问题……
我有一个网络服务,其中OperationContract 用于检索和更新。
以汽车为例,我的检索提供了一个包含汽车列表和汽车数量的对象。我已经通过一个类进行了配置。
[OperationContract(Name = "**Retrieve**")]
[FaultContract(typeof(FaultInfo))]
[XmlSerializerFormat]
CarInfo Retrieve(CarRequest CarRetrieve);
[OperationContract(Name = "**Update**")]
[FaultContract(typeof(FaultInfo))]
[XmlSerializerFormat]
CarUpdateInfo Update(CarUPDRequest CarUpdate);
现在我的检索似乎完全没有问题。它看起来像是在提供信息;但是,更新不起作用。
CarUPDRequest 对象由不同的类定义,其中之一是汽车列表。
该类的构造与CarUpdateInfo 大致相同,并且似乎有效。
在客户端,我知道我可以调用更新。但是我在客户端构造了对象CarUPDRequest。
我有像CarService 这样的服务引用命名空间。我实际上可以输入CarService.(并获取类方法列表,如CarInfo 和CarUPDRequest。
我注意到的几件事就像.Add 用于由列表定义的集合。在客户端应用程序上,我没有得到添加。但是,如果我在 CarService.cs 本地尝试相同的操作,它将允许我添加:
例子:
CarUpd.Cars.car.add 在客户端不起作用,但在服务器上起作用。像这样工作是一种选择。
当使用类似的东西时
var CarUpd = new CarUpdRequest();
我在这里缺少什么吗?
我们将不胜感激。
【问题讨论】:
-
嗯,DataContract 是必要的,我知道。但消息中包含用户名和密码以及汽车列表(VIN、型号、颜色)。如何使用 DataContract 在 Class 中创建列表?
-
再说一次,没关系。我通过执行 List
CarUpd = new List 解决了我的问题();