Asp.Net(C#)+Sql Server三层架构下数据存取方案
点击次数:20 次 发布日期:2008-11-26 10:56:55 作者:源代码网
|
源代码网推荐 源代码网推荐 参与了一个大型社区程序的开发,现在将相关开发经验陆续总结出来,和大家探讨一下。本节主要想与大家探讨一种数据读取方案:集合类代替直接从数据库中获取的DataSet,主要好处就是可以解决Sql Server吞吐量的瓶颈问题。一般小数量的程序不会有问题,但数据以十万百万条计的时候,数据库的吞吐量的限制就会表现的比较明显。这里的解决方案其实也就是把海量数据信息分成一条条取出,以频繁取库的代价解决瓶颈限制,其实也就是把数据库服务器的负担让WEB服务器分担了。闲话少说,进入正题,我们的例子还是社区程序中的一个配置表的读取,我们就是要根据一定条件来从数据库中获取数据。 源代码网推荐 源代码网推荐 一、数据库设计: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ScoreSetting 积分设置表 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Key: ScoreSettingID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Field name 源代码网推荐 源代码网推荐 源代码网推荐 Type 源代码网推荐 源代码网推荐 源代码网推荐 Length 源代码网推荐 源代码网推荐 源代码网推荐 Default 源代码网推荐 源代码网推荐 源代码网推荐 Description 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ScoreSettingID 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 ScoreSettingID(自动编号) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 FunctionID 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 功能ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 OperationID 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 操作ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 RoleTypeID 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 身份ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BBSTypeID 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 论坛类别ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Score 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 积分数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BB 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 币币数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BuyType 源代码网推荐 源代码网推荐 源代码网推荐 Int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 购买类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 FunctionState 源代码网推荐 源代码网推荐 源代码网推荐 int 源代码网推荐 源代码网推荐 源代码网推荐 4 源代码网推荐 源代码网推荐 源代码网推荐 0 源代码网推荐 源代码网推荐 源代码网推荐 0:否,1:是,2:购买 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 存储过程: 源代码网推荐 源代码网推荐 /********************************** 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 功能:根据一定条件读取功能记录 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 作者:Rexsp 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 创建日期:2004-01-13 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 修改者: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 修改日期: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 **********************************/ 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ALTER PROCEDURE GetScoreSetting 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ( 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ScoreSettingID INT=-1, ---设置ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @FunctionID INT=-1, ---功能ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @OperationID INT=-1, ---操作ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @RoleTypeID INT=-1, ---角色类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @BBSTypeID INT=-1, ---版块类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @Score INT=-1, ---积分设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @BB INT=-1, ---币币设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @BuyType INT=-1, ---购买类型 0:不是购买类型 1:一次性购买 2:反复购买 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @FunctionState INT=-1 ---功能状态 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 AS 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET NOCOUNT ON 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 DECLARE @strSQL NVARCHAR(1000) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = "SELECT * FROM [ScoreSetting] WHERE @ckScoreSettingID = @ckScoreSettingID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 --- Add KeyWords Begin --- 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @ScoreSettingID<> -1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND ScoreSettingID= @ckScoreSettingID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @FunctionID<> -1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND FunctionID= @ckFunctionID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @OperationID<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND OperationID = @ckOperationID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @RoleTypeID<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND RoleTypeID = @ckRoleTypeID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @BBSTypeID<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND BBSTypeID = @ckBBSTypeID" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @Score<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND Score = @ckScore" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @BB<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND BB= @ckBB" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @BuyType<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND BuyType= @ckBuyType" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 IF @FunctionState<>-1 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 BEGIN 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SET @strSQL = @strSQL + " AND FunctionState= @ckFunctionState" 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 END 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 --- Add Where Key Word --- 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 --- Run SQL Begin --- 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 EXECUTE sp_executesql @strSQL, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 N" @ckScoreSettingID INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckFunctionID INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckOperationID INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckRoleTypeID INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBBSTypeID INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckScore INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBB INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBuyType INT, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckFunctionState INT", 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckScoreSettingID=@ScoreSettingID, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckFunctionID=@FunctionID, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckOperationID = @OperationID, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckRoleTypeID = @RoleTypeID, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBBSTypeID = @BBSTypeID, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckScore = @Score, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBB = @BB, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckBuyType = @BuyType, 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 @ckFunctionState = @FunctionState 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 --- Run SQL End --- 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 一点说明: 源代码网推荐 源代码网推荐 此存储过程会根据数据层的类有没有传递相应的参数值进来而动态创建查询语句,然后用系统自带的存储过程执行sql语句,用系统存储过程执行sql语句的好处是可以自动转义字符。而动态创建查询语句的好处,就非常大了,这会省下我们写很多种条件判断,尤其是对那些字段比较多的表来讲,一个排列组合下来的情况太多了,而利用存储过程动态创建sql语句所作的判断数和字段数基本上是一致的,这里会给入参赋初始值,如果不等于初始值就说明数据层类有传递参数进来,这样就加上相应条件字符的查询条件。 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 二、 数据层类: 源代码网推荐 源代码网推荐 using System; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Collections; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Data; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Data.SqlClient; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using Town.Data; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using Town.Log; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 namespace Town.Com 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能:积分设置集合类 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 作者:Kelvin Yu 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 创建日期:2004-01-14 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 修改者: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 修改日期: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public class ScoreSettingCollection 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 私有成员 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private ArrayList members; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 构造函数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 构造函数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public ScoreSettingCollection() 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 公共属性 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// Operation对象的个数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int Count 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if( members != null ) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return members.Count; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 else 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return 0; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 索引 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 索引 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public ScoreSetting this[int index] 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if ( members != null ) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return (ScoreSetting)( members[index] ); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 else 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return null; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 私有方法 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 添加Operation到OperationCollection集合 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private void Add(ScoreSetting scoreSetting) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if ( members == null ) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 members = new ArrayList(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 members.Add( scoreSetting ); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 公共方法 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 根据不同条件取得积分设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 操作ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 角色ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 版块类型DI 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 积分 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 币币 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 购买类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能状态 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public bool GetSpecialInfo(int functionID,int operationID,int roleTypeID,int bBSTypeID,int score,int bB,int buyType,int functionState) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SqlDataAdapter dataAdapter = null; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Database data = new Database("Town"); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 创建参数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ArrayList sqlParameterList=new ArrayList(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(functionID!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@FunctionID", SqlDbType.Int, 4, functionID)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(operationID!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@OperationID", SqlDbType.Int, 4, operationID)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(roleTypeID!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@RoleTypeID", SqlDbType.Int, 4, roleTypeID)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(bBSTypeID!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@BBSTypeID", SqlDbType.Int, 4, bBSTypeID)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(score!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@Score", SqlDbType.Int, 4, score)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(bB!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@BB", SqlDbType.Int, 4, bB)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(buyType!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@BuyType", SqlDbType.Int, 4, buyType)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(functionState!=-1) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 sqlParameterList.Add(data.MakeInParam("@FunctionState", SqlDbType.Int, 4, functionState)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SqlParameter[] prams= new SqlParameter[sqlParameterList.Count]; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 for( int i=0;i 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 prams[i]=(SqlParameter)sqlParameterList[i]; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 try 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 data.RunProc("GetScoreSetting", prams, out dataAdapter); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 DataSet dataSet = new DataSet(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataAdapter.Fill(dataSet,"table"); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataAdapter.Dispose(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 if(dataSet.Tables["table"].Rows.Count == 0) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataSet.Clear(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataSet.Dispose(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return false; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 else 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 foreach(DataRow dr in dataSet.Tables["table"].Rows) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 ScoreSetting SS = new ScoreSetting(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.ID= Int32.Parse(dr["ScoreSettingID"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.FunctionID= Int32.Parse(dr["FunctionID"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.OperationID= Int32.Parse(dr["OperationID"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.RoleTypeID= Int32.Parse(dr["RoleTypeID"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.BBSTypeID= Int32.Parse(dr["BBSTypeID"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.Score= Int32.Parse(dr["Score"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.BB= Int32.Parse(dr["BB"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.BuyType= Int32.Parse(dr["BuyType"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 SS.FunctionState= Int32.Parse(dr["FunctionState"].ToString().Trim()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Add(SS); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataSet.Clear(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataSet.Dispose(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return true; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 catch (Exception ex) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 Error.Log("Town", ex.ToString()); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 dataAdapter.Dispose(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 return false; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 finally 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 data.Close(); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 data.Dispose();//释放Database 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 一点说明: 源代码网推荐 源代码网推荐 数据层类分类的代码分了六块:私有成员、构造函数、公共属性、索引、私有方法、公有方法。这里为类建立了索引,这是集合类的必须元素。然后有一个私有方法,作用是把对象加到集合中,公有方法就是一个查询方法,上面的例子中是通过参数传的,其实也可以用属性传。这里作了个约定,如果传进的值为-1便认为此变量不起作用,基本跟存储过程中的思想是一样的。这个例子中的ScoreSetting对象是另外一个独立的类,如下: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Data; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Data.SqlClient; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using Town.Data; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using Town.Log; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 using System.Collections; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 namespace Town.Com 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能:积分类 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 作者:Kelvin Yu 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 创建日期:2004-01-14 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 修改者: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 修改日期: 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public class ScoreSetting 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 私有成员 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 分值设置ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int id=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int functionID=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 操作ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int operationID=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 角色类型ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int roleTypeID=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 版块类型ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int bBSTypeID=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 积分 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int score=-2000000000; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 币币 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int bB=-2000000000; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 购买类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int buyType=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能状态 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 private int functionState=-1; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 是否更新分值 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 公有属性 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 积分设置DI 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return id;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{id=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 功能ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int FunctionID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return functionID;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{functionID=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 操作ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int OperationID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return operationID;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{operationID=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 角色类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int RoleTypeID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return roleTypeID;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{roleTypeID=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 版块类型 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int BBSTypeID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return bBSTypeID;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{bBSTypeID=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 积分 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int Score 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return score;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{score=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 币币 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int BB 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return bB;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{bB=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 购买类型 0- 不是购买类型 1 - 一次性购买 2-反复购买 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int BuyType 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return buyType;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{buyType=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 购买状态:0-无此功能 1-有此功能 2-需要购买 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public int FunctionState 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 get{return functionState;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 set{functionState=value;} 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 构造函数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public ScoreSetting() 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 重载构造函数 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 积分设置ID 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public ScoreSetting(int id) 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 this.id=id; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #endregion 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 #region 公共方法 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 根据ID获得积分设置信息 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 成功true,失败false 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public bool GetInfoByID() 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 //代码略 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 添加积分设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 成功true,失败false 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public bool Add() 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 //代码略 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 编程积分设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 成功返回true,失败返回false 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 public bool Edit() 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 //代码略 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 删除积分设置 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 /// 成功返回true,失败返回false 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 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然后再绑定数据。 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
