- ·上一篇文章:asp.net编程实现删除文件夹及文件夹下文件的方法
- ·下一篇文章:asp.net简单生成验证码的方法
asp.net类序列化生成xml文件实例详解
本文实例讲述了asp.net类序列化生成xml文件的方法。分享给大家供大家参考,具体如下:
根据设计的需求需要开发多个商品的API 原XML文件如下:
http://www.xxxxx.com/todaydetials.aspx&
#63
id=143爱购114 http://www.xxxxx.com/ 杭州 2011-2-9 2011-2-15 3880 2088 0.53 0
现在需求是要根据数据库有几条商品信息 相应的API XML文件出现几个URL节点! 采用类序列化成XML文件然后读取相应生成的XML文件就可以展示多个商品XML的信息 实现代码如下:
首先定义好XML 各个节点的数据及父子节点的关系类:
#region 定义数据实体类xml数据结构public class urlset
{ public ListurlList
{ get
set
}}public class url
{ public string loc
{ get
set
} public List dataList
{ get
set
}}public class data
{ public ListdisplayList
{ 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
{ ///
/// 商品标题 /// public string title
{ get
set
} ///
/// 商品发布时间 /// public DateTime createtime
{ get
set
} ///
/// 商品图片 /// public string productimg
{ get
set
} ///
/// 市场价 /// public decimal market_price
{ get
set
} ///
/// 团购价 /// public decimal team_price
{ get
set
} ///
/// 折扣价 /// public decimal zhekou_price
{ get
set
} ///
/// 城市名称 /// public string cityName
{ get
set
} ///
/// 商品开始时间 /// public DateTime begin_time
{ get
set
} ///
/// 结束时间 /// public DateTime end_time
{ get
set
} ///
/// 商家名称 /// public string merchants_id
{ get
set
} ///
/// 本单详情 /// public string description
{ get
set
} ///
/// 最低购买人数 /// public int lowBuNo
{ get
set
} ///
/// 商家地址 /// public string Address
{ get
set
} ///
/// 商家电话 /// public string Telphone
{ get
set
} ///
/// 城市区号 /// public string cCode
{ get
set
} ///
/// 文件夹名称 /// public string folderName
{ get
set
} ///
/// 团购状态 /// public string StatusMessage
{ get
set
} ///
/// 现在购买人数 /// public int nownumber
{ get
set
} ///
/// 商品编号 /// public int productID
{ get
set
}}
#endregion
第三步:获取数据库商品信息记录并添加到对象的集合中(Arraylist):
#region 获取xml实体类信息///
/// 获取xml实体类信息/// ///
public static ArrayList GetWebModelInfo()
{ ArrayList list = new ArrayList()
string strSQL = "select a.id, a.merchantsID,a.cCode,a.prodCode,a.statue,a.now_number, a.title,a.createtime,a.productimg,a.market_price,a.team_price,a.zhekou_price,a.cityName,a.begin_time,a.end_time,a.description,a.lowBuyNo,b.Address,b.Tel from tg_product as a left join tg_merchants as b on a.merchantsID=b.merchants_id where a.ispublic=1 and statue>-1 and getdate()DataSet ds = FrameWork.Data.SqlHelper.ReturnDataSet(CommandType.Text, strSQL, null)
if (ds.Tables[0].Rows.Count > 0)
{ foreach (DataRow dr in ds.Tables[0].Rows)
{ WebSiteInfo webModel = new WebSiteInfo()
//城市名称 webModel.cityName = dr["cityName"].ToString()
//商品标题 webModel.title = dr["title"].ToString()
//商品创建时间 webModel.createtime = Convert.ToDateTime(dr["createtime"].ToString())
//商家名称 webModel.merchants_id = dr["merchantsID"].ToString()
//商品图片 webModel.productimg = dr["productimg"].ToString()
//市场价 webModel.market_price = Convert.ToDecimal(dr["market_price"].ToString())
//团购价 webModel.team_price = Convert.ToDecimal(dr["team_price"].ToString())
//折扣价 webModel.zhekou_price = Convert.ToDecimal(dr["zhekou_price"].ToString())
//开始时间 webModel.begin_time = Convert.ToDateTime(dr["begin_time"].ToString())
//结束时间 webModel.end_time = Convert.ToDateTime(dr["end_time"].ToString())
//商品说明 webModel.description = dr["description"].ToString()
//最低购买数量 webModel.lowBuNo = Convert.ToInt32(dr["lowBuyNo"].ToString())
//商家电话 webModel.Telphone = dr["Tel"].ToString()
//商家地址 webModel.Address = dr["Address"].ToString()
//城市编号 webModel.cCode = dr["cCode"].ToString()
//图片文件夹名称 webModel.folderName = dr["prodCode"].ToString()
//现在购买人数 webModel.nownumber = Convert.ToInt32(dr["now_number"].ToString())
//商品编号 webModel.productID = Convert.ToInt32(dr["id"].ToString())
int status = Convert.ToInt32(dr["statue"].ToString())
switch (status)
{ case 0: webModel.StatusMessage = "结束"
break
case 1: webModel.StatusMessage = "成功"
break
} list.Add(webModel)
} } return list
}
#endregion
最后一步将数据库读取来的信息赋值到XML 数据类型中 并序列化成XML文件保存成XML格式的文件读取文件展
asp.net类序列化生成xml文件实例详解