为了账号安全,请及时绑定邮箱和手机立即绑定

如何创建一个要从 XML 反序列化的类

如何创建一个要从 XML 反序列化的类

C#
智慧大石 2022-12-24 13:45:14
如何创建必须用于反序列化 XML 的 C# 类,如下所示<?xml version="1.0" encoding="utf-8"?><XML>    <StatusCode>-2</StatusCode>    <Warnings />    <Errors>        <Error> Debtor #2 Invalid Postal Code</Error>        <Error>Invalid lien term</Error>    </Errors></XML>
查看完整描述

3 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

尝试以下:


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Xml;

using System.Xml.Serialization;



namespace ConsoleApplication110

{

    class Program

    {

        const string INPUT_FILENAME = @"c:\temp\test.xml";

        const string OUTPUT_FILENAME = @"c:\temp\test1.xml";


        static void Main(string[] args)

        {

            XmlReader reader = XmlReader.Create(INPUT_FILENAME);

            XmlSerializer serializer = new XmlSerializer(typeof(XML));

            XML xml = (XML)serializer.Deserialize(reader);


            XmlWriterSettings settings = new XmlWriterSettings();

            settings.Indent = true;

            XmlWriter writer = XmlWriter.Create(OUTPUT_FILENAME, settings);

            serializer.Serialize(writer, xml);

        }

    }

    public class XML

    {

        public int StatusCode { get; set; }

        public string Warnings { get; set; }


        [XmlArray("Errors")]

        [XmlArrayItem("Error")]

        public List<string> errors { get; set; }


    }



}


查看完整回答
反对 回复 2022-12-24
?
倚天杖

TA贡献1828条经验 获得超3个赞

你的班级应该是这样的:


public class ErrorClass

{

    struct Error

    {

        public String message;

    }

    struct Warning

    {

        public String message;

    }


    int StatusCode;

    List<Error> Errors;

    List<Warning> Warnings;


}

错误和警告结构可能包含更多您发布的示例中未使用的项目。


查看完整回答
反对 回复 2022-12-24
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

要基于 XML 创建类,请将 xml 复制到剪贴板,然后在 Visual Studio 2017 中,选择菜单选项:编辑/选择性粘贴/将 XML 粘贴为类。



查看完整回答
反对 回复 2022-12-24
  • 3 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号