大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> NET专区 -> Asp.Net(C#)+Sql Server三层架构下数据存取方案(四)

Asp.Net(C#)+Sql Server三层架构下数据存取方案(四)

时间: 2021-07-31 作者:daque

#region 大众本领 /// <summary> /// 按照各别前提博得积分树立 /// </summary> /// <param name="functionid">功效id</param> /// <param name="operationid">操纵id</param> /// <param name="roletypeid">脚色id</param> /// <param name="bbstypeid">版块典型di</param> /// <param name="score">积分</param> /// <param name="bb">币币</param> /// <param name="buytype">购置典型</param> /// <param name="functionstate">功效状况</param> /// <returns></returns> 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<sqlparameterlist.count;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东西是其余一个独力的类,如次:

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.