0

嗨,我有一个运行良好的 WCF 服务。出于测试目的以 QC 数据,我想对数据进行序列化并将其写入 xml 文档。如何才能做到这一点。

请在下面的代码中找到我在客户端应用程序中使用 WCF 服务的位置

Client.EMPServiceClient proxy = new Client.EMPServiceClient(); 

proxy.ClientCredentials.UserName.UserName = "testuser"; 
proxy.ClientCredentials.UserName.Password = "password"; 

Client.EMPSearchCriteria criteria = new Client.EMPSearchCriteria(); 
criteria.EMPNumber = "01-351"; 
proxy.GetEMPData(criteria); 

Console.Write("Finish"); 

我写了一个如下的类来将输出写入文档 - 但有人可以告诉我如何桥接这些

public static void SerializeToXML(EMPData pdata) 
{ 
    XmlSerializer serializer = new XmlSerializer(typeof(EMPData)); 
    TextWriter txtwriter = new StreamWriter(@"d:\test.xml"); 
    serializer.Serialize(txtwriter, pdata); 
    txtwriter.Close(); 
} 

请就如何将输出写入 xml 文档提出建议

谢谢,贾斯汀

4

2 回答 2

0

正确的方法是使用 WCF 的内置消息日志记录 - 根本不需要修改应用程序。这样,您一定会得到完全相同的消息 - 否则您的客户端的序列化可能会受到 WCF 配置的影响,而当您手动序列化消息时,该配置将不适用。

http://msdn.microsoft.com/en-us/library/ms751526.aspx

于 2012-08-24T17:13:31.283 回答
0

proxy.GetEMPData(criteria);

退货?你不应该使用那个结果吗?

尝试...

Client.EMPServiceClient proxy = new Client.EMPServiceClient(); 

proxy.ClientCredentials.UserName.UserName = "testuser"; 
proxy.ClientCredentials.UserName.Password = "password"; 

Client.EMPSearchCriteria criteria = new Client.EMPSearchCriteria(); 
criteria.EMPNumber = "01-351"; 
var data =    proxy.GetEMPData(criteria); // Change this line

SerializeToXML(data); // and adding this line

Console.Write("Finish"); 
于 2012-08-24T15:44:26.873 回答