首页 / 软件开发 / .NET编程技术 / 利用特性(Attribute)对实体类进行验证
利用特性(Attribute)对实体类进行验证2010-12-24 博客园 Funeral对于XML的内容,我这边的处理方式是将它反序列化成实体对象,毕竟操作一 个实体对象比一大堆的XPath强多了。.net framework自带的XML序列化和反序列化类 System.Xml.Serialization.XmlSerializer由于内部实现过于复杂,导致性能不 佳。我这边自己实现了一个XML反序列化类,性能虽好但比较有针对性,所以今 天还是以.net framework自带的XML反序列化类作为示范。比如说一个XML的内容是这样:<? xml version = "1.0" encoding = "utf-8"?>
<OrderRequest>
<!-- 订单号 -->
<OrderNo>T-1234567</OrderNo>
<!-- 商品名称 -->
<CommodityName>笔记本电脑</CommodityName>
<!-- 商品数量 -->
<CommodityAmount>1</CommodityAmount>
<!-- 商品重量 单位:KG -->
<CommodityWeight>5.27</CommodityWeight>
<!-- 商品价格 -->
<CommodityValue>13999.00</CommodityValue>
<!-- 希望到达时间 -->
<HopeArriveTime>2010-09-01 00:00:00</HopeArriveTime>
<!-- 结算方式 只能为现结、到付和月结三种 -->
<PayMent>现结</PayMent>
<!-- 备注 -->
<Remark>小心轻放</Remark>
</OrderRequest>
当然,正常的订单不会只有这么点内容,下面我们要为它设计一个实体 类:/// <summary>
/// 订单实体类
/// </summary>
public class OrderRequest
{
/// <summary>
/// 订单号
/// </summary>
public string OrderNo { get; set; }
/// <summary>
/// 商品名称
/// </summary>
public string CommodityName { get; set; }
/// <summary>
/// 商品数量
/// </summary>
public string CommodityAmount { get; set; }
/// <summary>
/// 商品重量
/// </summary>
public string CommodityWeight { get; set; }
/// <summary>
/// 商品价格
/// </summary>
public string CommodityValue { get; set; }
/// <summary>
/// 希望到货时间
/// </summary>
public string HopeArriveTime { get; set; }
/// <summary>
/// 结算方式
/// </summary>
public string PayMent { get; set;}
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
}