asp.net类序列化生成xml文件实例详解

2019-05-22 22:51:56丽君

本文实例讲述了asp.net类序列化生成xml文件的方法。,具体如下:

根据设计的需求需要开发多个商品的API 原XML文件如下:

<urlset>
 <url>
  <loc>http://www.xxxxx.com/todaydetials.aspx?id=143</loc>
  <data>
   <display>
    <website>爱购114</website>
    <siteurl>http://www.xxxxx.com/</siteurl>
    <city>杭州</city>
    <webSitetitle></webSitetitle>
    <image></image>
    <startTime>2011-2-9</startTime>
    <endTime>2011-2-15</endTime>
    <value>3880</value>
    <price>2088</price>
    <rebate>0.53</rebate>
    <bought>0</bought>
   </display> 
  </data>
 </url>
</urlset>

现在需求是要根据数据库有几条商品信息 相应的API XML文件出现几个URL节点! 采用类序列化成XML文件然后读取相应生成的XML文件就可以展示多个商品XML的信息 实现代码如下:

首先定义好XML 各个节点的数据及父子节点的关系类:

#region 定义数据实体类xml数据结构
public class urlset
{
  public List<url> urlList
  {
   get;
   set;
  }
}
public class url
{
  public string loc
  {
   get;
   set;
  }
  public List<data> dataList
  {
   get;
   set;
  }
}
public class data
{
  public List<display> displayList
  {
   get;
   set;
  }
}
public class display
{
  public string website
  {
   get;
   set;
  }
  public string siteurl
  {
   get;
   set;
  }
  public string city
  {
   get;
   set;
  }
  public string webSitetitle
  {
   get;
   set;
  }
  public string image
  {
   get;
   set;
  }
  public string startTime
  {
   get;
   set;
  }
  public string endTime
  {
   get;
   set;
  }
  public double value
  {
   get;
   set;
  }
  public double price
  {
   get;
   set;
  }
  public double rebate
  {
   get;
   set;
  }
  public int bought
  {
   get;
   set;
  }
}
#endregion

第二步:#region 定义获取网站信息实体类

public class WebSiteInfo
{
  /// <summary>
  /// 商品标题
  /// </summary>
  public string title { get; set; }
  /// <summary>
  /// 商品发布时间
  /// </summary>
  public DateTime createtime { get; set; }
  /// <summary>
  /// 商品图片
  /// </summary>
  public string productimg { get; set; }
  /// <summary>
  /// 市场价
  /// </summary>
  public decimal market_price { get; set; }
  /// <summary>
  /// 团购价
  /// </summary>
  public decimal team_price { get; set; }
  /// <summary>
  /// 折扣价
  /// </summary>
  public decimal zhekou_price { get; set; }
  /// <summary>
  /// 城市名称 
  /// </summary>
  public string cityName { get; set; }
  /// <summary>
  /// 商品开始时间
  /// </summary>
  public DateTime begin_time { get; set; }
  /// <summary>
  /// 结束时间
  /// </summary>
  public DateTime end_time { get; set; }
  /// <summary>
  /// 商家名称
  /// </summary>
  public string merchants_id { get; set; }
  /// <summary>
  /// 本单详情
  /// </summary>
  public string description { get; set; }
  /// <summary>
  /// 最低购买人数
  /// </summary>
  public int lowBuNo { get; set; }
  /// <summary>
  /// 商家地址
  /// </summary>
  public string Address { get; set; }
  /// <summary>
  /// 商家电话
  /// </summary>
  public string Telphone { get; set; }
  /// <summary>
  /// 城市区号
  /// </summary>
  public string cCode { get; set; }
  /// <summary>
  /// 文件夹名称
  /// </summary>
  public string folderName { get; set; }
  /// <summary>
  /// 团购状态 
  /// </summary>
  public string StatusMessage { get; set; }
  /// <summary>
  /// 现在购买人数
  /// </summary>
  public int nownumber { get; set; }
  /// <summary>
  /// 商品编号
  /// </summary>
  public int productID { get; set; }
}
#endregion