#region 构造函数
         public ScoreSetting()
         {
         }
         /// <summary>
         /// 重载构造函数
         /// </summary>
         /// <param name="id">积分设置ID</param>
         public ScoreSetting(int id)
         {
              this.id=id;
         }
         #endregion
 
         #region 公共方法
         /// <summary>
         /// 根据ID获得积分设置信息
         /// </summary>
         /// <returns>成功true,失败false</returns>
         public bool GetInfoByID()
         {
           //代码略
          } 
 
         /// <summary>
         /// 添加积分设置
         /// </summary>
         /// <returns>成功true,失败false</returns>
         public bool Add()
         {
              //代码略
         }
         /// <summary>
         /// 编程积分设置
         /// </summary>
         /// <returns>成功返回true,失败返回false</returns>  
         public bool Edit()
         {
              //代码略
         }
         /// <summary>
         /// 删除积分设置
         /// </summary>
         /// <returns>成功返回true,失败返回false</returns>
         public bool Remove()
         {
              //代码略
     }
}
 
一点说明:这个类包含四部分,私有成员、构造函数、公共属性、公共方法,私有成员与数据库表的字段是对应的,属性与私有成员相对应。构造函数会初始数据表的key键,当然也可以重载构造函数初始另外的私有成员。这个类包含四个方法,也就是数据的四种操作:读、写、删、改。
 
一、表示层(UI层)
这一层主要是读取数据了。基本上会根据需求填充到不同的服务器控件中。
 
              ScoreSettingCollection ssc = new ScoreSettingCollection();
              FunctionCollection funcc = new FunctionCollection();
              funcc.GetInfoByFunctionName("版名管理");
              int functionID=funcc[0].ID;
              ssc.GetSpecialInfo(functionID,0,roleTypeID,bBSTypeID,-1,-1,-1,-1);
              int sscCount=ssc.Count;
 
 
 
上面的这段代码就是数据读取过程,根据sscCount可以判断有没有得到数据。在得到数据的前提下填充控件之前,是把这一条条的数据重新循环组成一个DataTable然后再绑定数据。