none
关于XMl序列化 RRS feed

  • 问题

  • 最近想做一个WebServices,数据传输要使用XML,于是就开始研究这个序列化,可是一直没什么进展,希望各位能指点一下。最终要生成下面这种格式的文件。
    <?xml version="1.0" encoding="utf-8"?>
    <HYDWDMB>
    	<BH value="1">
    		<TJ_DWFZ_HD id="1">
    			<BH value="1">	
    			    <FZXXXX>	
    					<DWBH>1</DWBH>
    					<FZBH>0001</FZBH>
    					<TJXM>一般检查</TJXM>
    					<DWBH>2</DWBH>
    					<FZBH>0002</FZBH>
    					<TJXM>外科</TJXM>
    					<DWBH>3</DWBH>
    					<FZBH>0003</FZBH>
    					<TJXM>内科</TJXM>
    				</FZXXXX>
    			</BH>
    			<DWBH>1</DWBH>
    			<DWTJCS>4</DWTJCS>
    			<FZMC>白领套餐(男)</FZMC>
    			<FZXGR>张亮</FZXGR>
    			<FZXGRQ>2013-10-10</FZXGRQ>
    			<BZBJ>1000</BZBJ>
    		</TJ_DWFZ_HD>
    		<TJ_DWFZ_HD id="2">
    			<BH value="4">	
    			    <FZXXXX>	
    					<DWBH>2</DWBH>
    					<FZBH>0001</FZBH>
    					<TJXM>一般检查</TJXM>
    					<DWBH>2</DWBH>
    					<FZBH>0002</FZBH>
    					<TJXM>外科</TJXM>
    					<DWBH>3</DWBH>
    					<FZBH>0003</FZBH>
    					<TJXM>内科</TJXM>
    				</FZXXXX>
    			</BH>
    			<DWBH>1</DWBH>
    			<DWTJCS>4</DWTJCS>
    			<FZMC>白领套餐(男)</FZMC>
    			<FZXGR>张亮</FZXGR>
    			<FZXGRQ>2013-10-10</FZXGRQ>
    			<BZBJ>1000</BZBJ>
    		</TJ_DWFZ_HD>
    		<JQZB_RYMD id="1">
    			<DWBH></DWBH>
    			<DWMC></DWMC>
    			<XM>韩松</XM>
    			<XB></XB>
    			<FZMC></FZMC>
    			<PHONE></PHONE>
    			<HYLX></HYLX>
    			<BQGS></BQGS>
    			<TJLX></TJLX>
    			<TJJSFS></TJJSFS>
    			<MZ></MZ>
    			<TJKH></TJKH> 
    		</JQZB_RYMD>
    		<JQZB_RYMD id="2">
    			<DWBH></DWBH>
    			<DWMC></DWMC>
    			<XM>许瑞银</XM>
    			<XB></XB>
    			<FZMC></FZMC>
    			<PHONE></PHONE>
    			<HYLX></HYLX>
    			<BQGS></BQGS>
    			<TJLX></TJLX>
    			<TJJSFS></TJJSFS>
    			<MZ></MZ>
    			<TJKH></TJKH> 
    		</JQZB_RYMD>
    	</BH>
    	<MC>中国移动</MC>
    	<DWFZR>冷峻</DWFZR>
    	<LXDH>13113685259</LXDH>
    	<LXDZ>振业大厦</LXDZ>
    	<QYXZ>单位</QYXZ>
    	<BZ>深圳</BZ>
    </HYDWDMB>
    一个节点下面拥有多个节点,就是不知道改如何下手啊。
    2013年10月28日 2:16

答案

  • 尝试使用XDocument(net framework3.5+) or XmlDocument(net framework 2.0+).


    Click For donating:Free Rice For the poor
    For spamming-sender issues, you can either report it at Microsoft Spamming Issue, or just find "Report Spam Here+Number" at Forum Issue;You can also find "Verify Your Account+Number" at "Forum Issue", where you can submit to be confirmed to paste links or images.
    For more things to talk about? StackOverFlow is your choice.

    2013年10月29日 5:39
    版主
  • 你好:

    欢迎来到MSDN中文论坛!

    如果想根据xml文件生成对应的实体类,用于序列化和反序列化的话,有以下几种方法:

    1. 使用xsd.exe

    首先生成xml文件对应的xml schema文件,例如:xsd test.xml ,这个命令会在当前目录下面生成一个同名的test.xsd文件。

    然后再根据xml schema文件生成对应的cs文件,例如: xsd test.xsd /c /language:cs,这个命令就自动生成一个具有实体类的类文件。

    具体的命令参数请参考文档。

    2. 使用第三方的工具

    CodeSmith

    CodeSmith开发系列资料总结

    3. 使用t4根据xml文件生成类代码

    关于t4(Text Template)的使用方法,请参考:代码生成和 T4 文本模板


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2013年10月29日 5:50
    版主

全部回复

  • 尝试使用XDocument(net framework3.5+) or XmlDocument(net framework 2.0+).


    Click For donating:Free Rice For the poor
    For spamming-sender issues, you can either report it at Microsoft Spamming Issue, or just find "Report Spam Here+Number" at Forum Issue;You can also find "Verify Your Account+Number" at "Forum Issue", where you can submit to be confirmed to paste links or images.
    For more things to talk about? StackOverFlow is your choice.

    2013年10月29日 5:39
    版主
  • 你好:

    欢迎来到MSDN中文论坛!

    如果想根据xml文件生成对应的实体类,用于序列化和反序列化的话,有以下几种方法:

    1. 使用xsd.exe

    首先生成xml文件对应的xml schema文件,例如:xsd test.xml ,这个命令会在当前目录下面生成一个同名的test.xsd文件。

    然后再根据xml schema文件生成对应的cs文件,例如: xsd test.xsd /c /language:cs,这个命令就自动生成一个具有实体类的类文件。

    具体的命令参数请参考文档。

    2. 使用第三方的工具

    CodeSmith

    CodeSmith开发系列资料总结

    3. 使用t4根据xml文件生成类代码

    关于t4(Text Template)的使用方法,请参考:代码生成和 T4 文本模板


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2013年10月29日 5:50
    版主