我正在使用Typed DataSet和WCF Service。当我通过在DataTable中添加新行来调用WCF代理方法上的 更新 方法时,我在Service方法中获得了一行DataTable。这是按预期工作的。
但是,当我通过更新DataTable中的行在WCF代理上调用相同的 Update 方法时,我在Service方法中得到空DataTable。我检查了代理 更新 方法,并验证在调用服务方法之前,DataTable的修改行的行版本为“已修改”。
我无法找到为什么我在服务方法中获取空数据表,即使代理客户端向服务发送一行DataTable也是如此。有趣的是,当通过添加新行调用WCF代理方法上的相同 更新 方法时,Service方法接收数据。
以下是我调用Service来更新行的方法。
ServiceClient client = new ServiceClient();
MyDataSet dataSet = client.GetContactByContactId(contactId);
MyDataSet.MyDataTable contactTable = MyDataSet.MyDataTable;
MyDataSet.ContactTableRow row = contactTable[0];
row.FirstName = "ABC";
return client.UpdateContact(contactTable);
答案 0 :(得分:0)
我不知道答案,当方法返回DataSet时行为很奇怪但想法不好:Returning DataSets from WebServices is the Spawn of Satan and Represents All That Is Truly Evil in the World