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

📄 dclassmovement.cs

📁 这是一个自动排课软件(包含源码,需求分析,详细设计).希望对你有所帮助.
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using Entities;
using Search;

namespace DAL.SqlServer
{
    public class DClassMovement : IDClassMovement
    {
        #region 插入实体操作部份
        /// <summary>
        /// 插入
        /// </summary>
        /// <param name="cmd">Command对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        private int Insert(SqlCommand cmd, ClassMovement classMovement)
        {
            cmd.Parameters.Clear();
            cmd.CommandText = "insert into ClassMovement (Class_ID,Movement_ID,Movement_Date,movement_Time,is_am) values (@Class_ID,@Movement_ID,@Movement_Date,@movement_Time,@is_am)";
            //从实体中取出值放入Command的参数列表
            cmd.Parameters.Add(new SqlParameter("@Class_ID", classMovement.ClassID));
            cmd.Parameters.Add(new SqlParameter("@Movement_ID", classMovement.MovementID));
            cmd.Parameters.Add(new SqlParameter("@Movement_Date", classMovement.MovementDate));
            cmd.Parameters.Add(new SqlParameter("@movement_Time", classMovement.MovementTime));
            cmd.Parameters.Add(new SqlParameter("@is_am", classMovement.IsAm));
            return cmd.ExecuteNonQuery();
        }
        /// <summary>
        /// 不使用事务的插入方法
        /// </summary>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Insert(ClassMovement classMovement)
        {
            int result = 0;
            string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    result = Insert(cmd, classMovement);
                }
            }
            return result;
        }

        /// <summary>
        /// 使用事务的插入方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Insert(IConnection connection, ClassMovement classMovement)
        {
            SqlCommand cmd = connection.Command as SqlCommand;
            return Insert(cmd, classMovement);
        }
        #endregion

        #region 删除实体操作

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="cmd">Command对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        private int ExcuteDeleteCommand(SqlCommand cmd, ClassMovement classMovement)
        {
            cmd.Parameters.Clear();
            cmd.CommandText = "delete ClassMovement where Class_Movement_ID=@Class_Movement_ID";
            //从实体中取出值放入Command的参数列表
            cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID", classMovement.ClassMovementID));
            return cmd.ExecuteNonQuery();

        }
        /// <summary>
        /// 不使用事务的删除方法
        /// </summary>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(ClassMovement classMovement)
        {
            int result = 0;
            string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {

                    result = ExcuteDeleteCommand(cmd, classMovement);
                }
            }
            return result;
        }

        /// <summary>
        /// 使用事务的删除方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(IConnection connection, ClassMovement classMovement)
        {
            int result = 0;
            SqlCommand cmd = connection.Command as SqlCommand;
            result = ExcuteDeleteCommand(cmd, classMovement);
            return result;
        }

        /// <summary>
        /// 根据查询对象构建过滤条件并使用事务的删除方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(IConnection connection, ClassMovementSearcher searcher)
        {
            int result = 0;
            string condition = string.Empty;
            SqlCommand cmd = connection.Command as SqlCommand;
            cmd.Parameters.Clear();
            if (searcher.ClassMovementIDIsValid)
            {
                condition += " and Class_Movement_ID=@Class_Movement_ID";
                cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID", searcher.ClassMovementID));
            }
            if (searcher.ClassIDIsValid)
            {
                condition += " and Class_ID=@Class_ID";
                cmd.Parameters.Add(new SqlParameter("@Class_ID", searcher.ClassID));
            }
            if (searcher.MovementIDIsValid)
            {
                condition += " and Movement_ID=@Movement_ID";
                cmd.Parameters.Add(new SqlParameter("@Movement_ID", searcher.MovementID));
            }
            if (searcher.MovementDateIsValid)
            {
                condition += " and Movement_Date=@Movement_Date";
                cmd.Parameters.Add(new SqlParameter("@Movement_Date", searcher.MovementDate));
            }
            if (searcher.MovementTimeIsValid)
            {
                condition += " and movement_Time=@movement_Time";
                cmd.Parameters.Add(new SqlParameter("@movement_Time", searcher.MovementTime));
            }
            if (searcher.IsAmIsValid)
            {
                condition += " and is_am=@is_am";
                cmd.Parameters.Add(new SqlParameter("@is_am", searcher.IsAm));
            }
            if (condition != string.Empty)
            {
                condition = " where " + condition;
            }
            cmd.CommandText = "delete from  ClassMovement " + condition;
            result = cmd.ExecuteNonQuery();

            return result;
        }
        /// <summary>
        /// 根据查询对象构建过滤条件并不使用事务的删除方法
        /// </summary>
        /// <param name="searcher">查询对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(ClassMovementSearcher searcher)
        {
            int result = 0;
            string condition = string.Empty;
            string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    if (searcher.ClassMovementIDIsValid)
                    {
                        condition += " and Class_Movement_ID=@Class_Movement_ID";
                        cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID", searcher.ClassMovementID));
                    }
                    if (searcher.ClassIDIsValid)
                    {
                        condition += " and Class_ID=@Class_ID";
                        cmd.Parameters.Add(new SqlParameter("@Class_ID", searcher.ClassID));
                    }
                    if (searcher.MovementIDIsValid)
                    {
                        condition += " and Movement_ID=@Movement_ID";
                        cmd.Parameters.Add(new SqlParameter("@Movement_ID", searcher.MovementID));
                    }
                    if (searcher.MovementDateIsValid)
                    {
                        condition += " and Movement_Date=@Movement_Date";
                        cmd.Parameters.Add(new SqlParameter("@Movement_Date", searcher.MovementDate));
                    }
                    if (searcher.MovementTimeIsValid)
                    {
                        condition += " and movement_Time=@movement_Time";
                        cmd.Parameters.Add(new SqlParameter("@movement_Time", searcher.MovementTime));
                    }
                    if (searcher.IsAmIsValid)
                    {
                        condition += " and is_am=@is_am";
                        cmd.Parameters.Add(new SqlParameter("@is_am", searcher.IsAm));
                    }
                    if (condition != string.Empty)
                    {
                        condition = " where " + condition;
                    }
                    cmd.CommandText = "delete from  ClassMovement " + condition;
                    result = cmd.ExecuteNonQuery();
                }
            }
            return result;
        }
        #endregion

        #region 更新实体操作

        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="cmd">Command对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        private int ExcuteUpdateCommand(SqlCommand cmd, ClassMovement classMovement)
        {
            cmd.CommandText = "update ClassMovement set Class_ID=@Class_ID,Movement_ID=@Movement_ID,Movement_Date=@Movement_Date,movement_Time=@movement_Time,is_am=@is_am where Class_Movement_ID=@Class_Movement_ID";
            //从实体中取出值放入Command的参数列表
            cmd.Parameters.Add(new SqlParameter("@Class_ID", classMovement.ClassID));
            cmd.Parameters.Add(new SqlParameter("@Movement_ID", classMovement.MovementID));
            cmd.Parameters.Add(new SqlParameter("@Movement_Date", classMovement.MovementDate));
            cmd.Parameters.Add(new SqlParameter("@movement_Time", classMovement.MovementTime));
            cmd.Parameters.Add(new SqlParameter("@is_am", classMovement.IsAm));
            cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID", classMovement.ClassMovementID));
            return cmd.ExecuteNonQuery();
        }

        /// <summary>
        /// 不使用事务的更新方法
        /// </summary>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Update(ClassMovement classMovement)
        {
            int result = 0;
            string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    result = ExcuteUpdateCommand(cmd, classMovement);
                }
            }
            return result;
        }
        /// <summary>
        /// 使用事务的更新方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="classMovement">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Update(IConnection connection, ClassMovement classMovement)
        {
            int result = 0;
            SqlCommand cmd = connection.Command as SqlCommand;
            result = ExcuteUpdateCommand(cmd, classMovement);
            return result;
        }
        /// <summary>
        /// 根据查询对象构建过滤条件并不使用事务的更新方法
        /// </summary>
        /// <param name="searcher">查询对象</param>
        /// <param name="newValues">要更新的新值</param>
        /// <returns>影响的记录行数</returns>
        public int Update(ClassMovementSearcher searcher, ClassMovementSearcher newValues)
        {
            int result = 0;
            string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    //string updateString=GetUpdateString(cmd, newValues)+condition;
                    string updateString = string.Empty;
                    string condition = string.Empty;
                    if (newValues.ClassMovementIDIsValid)
                    {
                        updateString += ",Class_Movement_ID=@Class_Movement_ID_V";
                        cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID_V", newValues.ClassMovementID));
                    }
                    if (newValues.ClassIDIsValid)
                    {
                        updateString += ",Class_ID=@Class_ID_V";
                        cmd.Parameters.Add(new SqlParameter("@Class_ID_V", newValues.ClassID));
                    }
                    if (newValues.MovementIDIsValid)
                    {
                        updateString += ",Movement_ID=@Movement_ID_V";
                        cmd.Parameters.Add(new SqlParameter("@Movement_ID_V", newValues.MovementID));
                    }
                    if (newValues.MovementDateIsValid)
                    {
                        updateString += ",Movement_Date=@Movement_Date_V";
                        cmd.Parameters.Add(new SqlParameter("@Movement_Date_V", newValues.MovementDate));
                    }
                    if (newValues.MovementTimeIsValid)
                    {
                        updateString += ",movement_Time=@movement_Time_V";
                        cmd.Parameters.Add(new SqlParameter("@movement_Time_V", newValues.MovementTime));
                    }
                    if (newValues.IsAmIsValid)
                    {
                        updateString += ",is_am=@is_am_V";
                        cmd.Parameters.Add(new SqlParameter("@is_am_V", newValues.IsAm));
                    }
                    if (searcher.ClassMovementIDIsValid)
                    {
                        condition += " and Class_Movement_ID=@Class_Movement_ID_C";
                        cmd.Parameters.Add(new SqlParameter("@Class_Movement_ID_C", searcher.ClassMovementID));
                    }
                    if (searcher.ClassIDIsValid)
                    {
                        condition += " and Class_ID=@Class_ID_C";
                        cmd.Parameters.Add(new SqlParameter("@Class_ID_C", searcher.ClassID));
                    }
                    if (searcher.MovementIDIsValid)
                    {
                        condition += " and Movement_ID=@Movement_ID_C";
                        cmd.Parameters.Add(new SqlParameter("@Movement_ID_C", searcher.MovementID));
                    }

⌨️ 快捷键说明

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