如何将C#WCF DataContract序列化反序列化到从XML

如何将C#WCF DataContract序列化反序列化到从XML,第1张

概述我正在开发将被多个不同客户端应用程序使用的WCF服务.为了使一个功能起作用,服务器需要将 XML文件读入到C#DataContract中,然后传递给相关客户端.据MSDN网站了解,这是可能的,但我找不到任何完整的例子.特别是,该网站谈到一个“流”参数,我还没有得到. 我的数据合同有一个属性字段,它是具有多个简单属性字段的另一个数据契约的列表. 例如 [DataContract] publi 我正在开发将被多个不同客户端应用程序使用的WCF服务.为了使一个功能起作用,服务器需要将 XML文件读入到C#DataContract中,然后传递给相关客户端.据MSDN网站了解,这是可能的,但我找不到任何完整的例子.特别是,该网站谈到一个“流”参数,我还没有得到.

我的数据合同有一个属性字段,它是具有多个简单属性字段的另一个数据契约的列表.

例如

[DataContract]    public class MyClass1 {        [DataMember]        public string name;        [DataMember]        public int age;    }    [DataContract]    public class MyClass2 {        [DataMember]        public List<MyClass1> myClass1List;    }

我的课程看起来像这样.

解决方法 这是一个例子
MyClass1 obj = new MyClass1();DataContractSerializer dcs = new DataContractSerializer(typeof(MyClass1));using (Stream stream = new fileStream(@"C:\tmp\file.xml",fileMode.Create,fileAccess.Write)){    using (XmlDictionaryWriter writer =         XmlDictionaryWriter.CreateTextWriter(stream,EnCoding.UTF8))    {        writer.WriteStartdocument();        dcs.WriteObject(writer,obj);    }}
Books b = new Books();DataContractSerializer dcs = new DataContractSerializer(typeof(Books));try{    Stream fs = new fileStream(@"C:\Users\temelm\Desktop\Xmlfile.xml",fileAccess.Write);    XmlDictionaryWriter xDW = XmlDictionaryWriter.CreateTextWriter(fs,EnCoding.UTF8);    xDW.WriteStartdocument();    dcs.WriteObject(xDW,b);    xDW.Close();    fs.Flush();    fs.Close();}catch (Exception e){    s += e.Message + "\n";}
总结

以上是内存溢出为你收集整理的如何将C#WCF DataContract序列化/反序列化到/从XML全部内容,希望文章能够帮你解决如何将C#WCF DataContract序列化/反序列化到/从XML所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1258314.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存