将WCF输出写入文档

时间:2012-08-24 15:42:36

标签: c# .net wcf wcf-client

您好我有一个运行良好的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"); 

我写了一个类,如下所示将输出写入doc - 但是有人可以告诉我如何桥接这些

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 doc

谢谢, 贾斯汀

2 个答案:

答案 0 :(得分: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"); 

答案 1 :(得分:0)

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

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