⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cardtypeda.cs

📁 这是实现拼音码的源码
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Neverhood;
using System.Data.SqlClient;
using System.Text;

namespace Neverhood
{

    /// <summary>
    /// CardTypeDA 的摘要说明
    /// </summary>
    public class CardTypeDA
    {  
        //会员卡信息
        private const string PARM_CARD_TYPENAME = "@cardtypename";
        private const string PARM_CARD_RULE = "@cardrule";
        
        //会员卡操作信息
        private const string SQL_SELECT_CARDRULE = "select cardrule from 卡类型表 where cardtypename=@cardtypename";
        private const string SQL_UPDATE_CARDTYPENAME = "update 卡类型表 set cardtypename=@cardtypename where cardtypename=@oldname";
        private const string SQL_UPDATE_CARDRULE = "update 卡类型表 set cardrule=@cardrule where cardtypename=@cardtypename";
        private const string SQL_INSERT_CARDTYPE = "insert into 卡类型表 values(@cardtypename,@cardrule)";
        private const string SQL_SELECT_CARDNAME = "select cardtypename from 卡类型表 where cardtypename=@cardtypename";

        public CardTypeDA()
        {
            //
            // TODO: 在此处添加构造函数逻辑
            //
        }

        //通过会员类名称更新积分规则
        //cardtypename为会员卡类型名称
        //返回积分规则
        public int GetCardRule(string cardtypename)
        {
            int cardrule = 0;
            //创建新参数并给参数赋值,用来指定会员卡类型名称
            SqlParameter parms = new SqlParameter(PARM_CARD_TYPENAME, SqlDbType.NVarChar, 20);
            parms.Value = cardtypename;

            //调用SqlHandle访问组件的方法返回第一行第一列的值
            return (int)SqlHandle.ExectueScalar(SqlHandle.ConnectionStringLocalTransanction, CommandType.Text, SQL_SELECT_CARDRULE, parms);
        }

        //更新会员卡积分规则
        //cardtypename卡类型名称
        //newrule更新后的规则
        //返回更新是否成功
        public bool UpdateCardRule(CardTypeEntity mycarden)
        {
            //获取参数列表
            SqlParameter[] cardParms = GetParamters();

            //给参数赋值
            cardParms[0].Value = mycarden.CardTypeName;
            cardParms[1].Value = mycarden.CardRule;

            //使用StringBuilder来连接字符串
            StringBuilder strSQL = new StringBuilder();
            SqlCommand cmd = new SqlCommand();

            //遍历参数列表并将参数添加到SqlCommand命令中
            foreach (SqlParameter parms in cardParms)
            {
                cmd.Parameters.Add(parms);
            }

            using (SqlConnection conn = new SqlConnection(SqlHandle.ConnectionStringLocalTransanction))
            {
                //在连接字符串中加入SQL语句
                strSQL.Append(SQL_UPDATE_CARDRULE);
                conn.Open();
                cmd.Connection = conn;

                //设定SqlCommand命令的属性
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = strSQL.ToString();

                //执行SqlCommand命令结果不返回结果集的方法
                int val = cmd.ExecuteNonQuery();

                //清空SqlCommand中的参数列表
                cmd.Parameters.Clear();
                //判断如果并影响的行数大于0,如果大于0则成功,否则失败

                if (val > 0)
                {
                    return true;
                }
                else 
                {
                    return false;
                }
            }
        }

        //更新卡类型名称
        //旧名称oldname
        //新名称newname
        //更新是否成功
        public bool UpdateCardTypeName(string oldname, string newname)
        {
            //首先判断新的会员卡类型名称是否已经存在
            bool exits = GetCardType(newname);
            int val = 0;
            //如果不存在,正常执行,如果存在,则val值不变,方法返回false
            if (exits)
            {
                //创建参数数组,并赋值
                //因为此方法中参数与会员卡类型实体的参数不同,不可以使用GetParameters方法获取
                SqlParameter[] parms = new SqlParameter[2](new SqlParameter(PARM_CARD_TYPENAME,SqlDbType.NVarChar,20),
                                                        new SqlParameter("@oldname",SqlDbType.NVarChar,20));
                parms[0].Value = newname;
                parms[1].Value = oldname;

                //执行SqlHandle中不返回结果集的方法
                val = SqlHandle.ExecuteNonQuery(SqlHandle.ConnectionStringLocalTransanction,CommandType.Text,SQL_UPDATE_CARDTYPENAME,parms);
            }

            if(val > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        //添加卡类型
        //mycard卡类型实体
        public bool InsertCardType(CardTypeEntity mycard)
        {
            //首先判断新的会员卡类型名称是否已经存在
            bool exits = GetCardType(mycard.CardTypeName);
            //如果不存在,正常执行,如果存在,方法返回false
            if (exits)
            {
                StringBuilder strSQL = new StringBuilder();

                //获取添加卡类型的T-SQL语句的参数
                SqlParameter[] cardParms = GetParamters();
                SqlCommand cmd = new SqlCommand();

                //给参数赋值
                cardParms[0].Value = mycard.CardTypeName;
                cardParms[1].Value = mycard.CardRule;

                //遍历参数列表,并将参数添加进SqlCommand命令中
                foreach (SqlParameter parms in cardParms)
                {
                    cmd.Parameters.Add(parms);
                }

                //定义对象资源保存范围,一旦using范围结束,将释放对方所占的资源
                using (SqlConnection conn = new SqlConnection(SqlHandle.ConnectionStringLocalTransanction))
                {
                    strSQL.Append(SQL_INSERT_CARDTYPE);
                    conn.Open();

                    //设定SqlCommand的属性
                    cmd.Connection = conn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = strSQL.ToString();
                    //执行SqlCommand命令
                    int val = cmd.ExecuteNonQuery();
                    cmd.Parameters.Clear();
                    if (val > 0)
                    {
                        return true;
                    }
                    else
                    {
                        return false;
                    }
                }
            }
            else 
            {
                return false;
            }
        }

        //获取参数列表,因上面两个方法用到了此方法,所以单独列出
        //返回参数集合
        private static SqlParameter[] GetParamters()
        {
            //获取key值为cardtype的缓存参数列表
            SqlParameter[] parms = SqlHandle.GetCachedParameters("cardType");

            //如果参数列表不存在
            if (parms == null)
            {
                //新建参数列表
                parms = new SqlParameter[]{new SqlParameter(PARM_CARD_TYPENAME,SqlDbType.VarChar,20),
                                           new SqlParameter(PARM_CARD_RULE,SqlDbType.Int)};

                //缓存新建的参数列表,并设置KEY值为cardtype
                SqlHandle.CacheParameters("cardType",parms);
            }
            return parms;
        }

        //判断会员卡类型名称是否重复(仅为类内部调用,不公开)
        //typename会员卡类型名称
        //返回是否重复
        private bool GetCardType(string typename)
        {
            //创建新参数并给参数赋值,用来指定会员卡类型名称
            SqlParameter parm = new SqlParameter(PARM_CARD_TYPENAME,SqlDbType.NVarChar,20);
            parm.Value = typename;

            //调用SqlHandle访组件的方法返回第一行第一列的值
            object obj = SqlHandle.ExectueScalar(SqlHandle.ConnectionStringLocalTransanction, CommandType.Text, SQL_SELECT_CARDNAME, parm).ToString();

            //如果卡类型不存在返回true,如果存在返回false
            if (obj == null)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -