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

📄 dholiday.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 DHoliday:IDHoliday
	{
	    #region 插入实体操作部份
	    /// <summary>
        /// 插入
        /// </summary>
		/// <param name="cmd">Command对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
		private int Insert(SqlCommand cmd, Holiday holiday)
		{
		    cmd.Parameters.Clear();
			cmd.CommandText = "insert into Holiday (Class_ID,Start_Date,End_Date,AM_Start,AM_End) values (@Class_ID,@Start_Date,@End_Date,@AM_Start,@AM_End)";
			//从实体中取出值放入Command的参数列表
            cmd.Parameters.Add(new SqlParameter("@Class_ID",holiday.ClassID));
            cmd.Parameters.Add(new SqlParameter("@Start_Date",holiday.StartDate));
            cmd.Parameters.Add(new SqlParameter("@End_Date",holiday.EndDate));
            cmd.Parameters.Add(new SqlParameter("@AM_Start",holiday.AMStart));
            cmd.Parameters.Add(new SqlParameter("@AM_End",holiday.AMEnd));
            return cmd.ExecuteNonQuery();
		}
	    /// <summary>
        /// 不使用事务的插入方法
        /// </summary>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
	    public int Insert(Holiday holiday)
		{
		    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, holiday);
                }
			}
			return result;
		}
		
		/// <summary>
        /// 使用事务的插入方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Insert(IConnection connection,Holiday holiday)
        {
			SqlCommand cmd=connection.Command as SqlCommand;
            return Insert(cmd, holiday);
        }
		#endregion
		
		#region 删除实体操作
		
		/// <summary>
        /// 删除
        /// </summary>
		/// <param name="cmd">Command对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
		private int ExcuteDeleteCommand(SqlCommand cmd, Holiday holiday)
        {
			cmd.Parameters.Clear();
            cmd.CommandText = "delete Holiday where Holiday_ID=@Holiday_ID";
            //从实体中取出值放入Command的参数列表
		    cmd.Parameters.Add(new SqlParameter("@Holiday_ID", holiday.HolidayID));
            return cmd.ExecuteNonQuery();
			
        }
		/// <summary>
        /// 不使用事务的删除方法
        /// </summary>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(Holiday holiday)
        {
            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, holiday);
                }
            }
            return result;
        }
		
		/// <summary>
        /// 使用事务的删除方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(IConnection connection,Holiday holiday)
        {
            int result = 0;
			SqlCommand cmd=connection.Command as SqlCommand;
            result =  ExcuteDeleteCommand(cmd, holiday);
            return result;
        }
		
		/// <summary>
        /// 根据查询对象构建过滤条件并使用事务的删除方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(IConnection connection,HolidaySearcher searcher)
        {
            int result = 0;
			string condition=string.Empty;
			SqlCommand cmd=connection.Command as SqlCommand;
			cmd.Parameters.Clear();
		    if(searcher.HolidayIDIsValid)
			{
			    condition += " and Holiday_ID=@Holiday_ID";
		        cmd.Parameters.Add(new SqlParameter("@Holiday_ID",searcher.HolidayID));
			}
		    if(searcher.ClassIDIsValid)
			{
			    condition += " and Class_ID=@Class_ID";
		        cmd.Parameters.Add(new SqlParameter("@Class_ID",searcher.ClassID));
			}
		    if(searcher.StartDateIsValid)
			{
			    condition += " and Start_Date=@Start_Date";
		        cmd.Parameters.Add(new SqlParameter("@Start_Date",searcher.StartDate));
			}
		    if(searcher.EndDateIsValid)
			{
			    condition += " and End_Date=@End_Date";
		        cmd.Parameters.Add(new SqlParameter("@End_Date",searcher.EndDate));
			}
		    if(searcher.AMStartIsValid)
			{
			    condition += " and AM_Start=@AM_Start";
		        cmd.Parameters.Add(new SqlParameter("@AM_Start",searcher.AMStart));
			}
		    if(searcher.AMEndIsValid)
			{
			    condition += " and AM_End=@AM_End";
		        cmd.Parameters.Add(new SqlParameter("@AM_End",searcher.AMEnd));
			}
			if(condition!=string.Empty)
			{
				condition=" where "+condition;
			}
			cmd.CommandText="delete from  Holiday "+condition;
            result =  cmd.ExecuteNonQuery();
			
            return result;
        }
		/// <summary>
        /// 根据查询对象构建过滤条件并不使用事务的删除方法
        /// </summary>
        /// <param name="searcher">查询对象</param>
        /// <returns>影响的记录行数</returns>
        public int Delete(HolidaySearcher 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.HolidayIDIsValid)
			        {
			            condition += " and Holiday_ID=@Holiday_ID";
		                cmd.Parameters.Add(new SqlParameter("@Holiday_ID",searcher.HolidayID));
			        }
		            if(searcher.ClassIDIsValid)
			        {
			            condition += " and Class_ID=@Class_ID";
		                cmd.Parameters.Add(new SqlParameter("@Class_ID",searcher.ClassID));
			        }
		            if(searcher.StartDateIsValid)
			        {
			            condition += " and Start_Date=@Start_Date";
		                cmd.Parameters.Add(new SqlParameter("@Start_Date",searcher.StartDate));
			        }
		            if(searcher.EndDateIsValid)
			        {
			            condition += " and End_Date=@End_Date";
		                cmd.Parameters.Add(new SqlParameter("@End_Date",searcher.EndDate));
			        }
		            if(searcher.AMStartIsValid)
			        {
			            condition += " and AM_Start=@AM_Start";
		                cmd.Parameters.Add(new SqlParameter("@AM_Start",searcher.AMStart));
			        }
		            if(searcher.AMEndIsValid)
			        {
			            condition += " and AM_End=@AM_End";
		                cmd.Parameters.Add(new SqlParameter("@AM_End",searcher.AMEnd));
			        }
			        if(condition!=string.Empty)
			        {
				        condition=" where "+condition;
			        }
                    cmd.CommandText="delete from  Holiday "+condition;
                    result =  cmd.ExecuteNonQuery();
                }
            }
            return result;
        }
		#endregion
		
		#region 更新实体操作
		
		/// <summary>
        /// 更新
        /// </summary>
		/// <param name="cmd">Command对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
		private int ExcuteUpdateCommand(SqlCommand cmd, Holiday holiday)
		{
		    cmd.CommandText = "update Holiday set Class_ID=@Class_ID,Start_Date=@Start_Date,End_Date=@End_Date,AM_Start=@AM_Start,AM_End=@AM_End where Holiday_ID=@Holiday_ID";
			//从实体中取出值放入Command的参数列表
            cmd.Parameters.Add(new SqlParameter("@Class_ID",holiday.ClassID));
            cmd.Parameters.Add(new SqlParameter("@Start_Date",holiday.StartDate));
            cmd.Parameters.Add(new SqlParameter("@End_Date",holiday.EndDate));
            cmd.Parameters.Add(new SqlParameter("@AM_Start",holiday.AMStart));
            cmd.Parameters.Add(new SqlParameter("@AM_End",holiday.AMEnd));
			cmd.Parameters.Add(new SqlParameter("@Holiday_ID", holiday.HolidayID));
            return cmd.ExecuteNonQuery();
		}
		
		/// <summary>
        /// 不使用事务的更新方法
        /// </summary>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
	    public int Update(Holiday holiday)
		{
		    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, holiday);
                }
			}
			return result;
		}
		/// <summary>
        /// 使用事务的更新方法
        /// </summary>
        /// <param name="connection">实现共享Command的对象</param>
        /// <param name="holiday">实体类对象</param>
        /// <returns>影响的记录行数</returns>
        public int Update(IConnection connection,Holiday holiday)
        {
            int result = 0;
			SqlCommand cmd=connection.Command as SqlCommand;
            result =  ExcuteUpdateCommand(cmd, holiday);
            return result;
        }
		/// <summary>
        /// 根据查询对象构建过滤条件并不使用事务的更新方法
        /// </summary>
        /// <param name="searcher">查询对象</param>
		/// <param name="newValues">要更新的新值</param>
        /// <returns>影响的记录行数</returns>
	    public int Update(HolidaySearcher searcher,HolidaySearcher 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.HolidayIDIsValid)
			        {
			            updateString += ",Holiday_ID=@Holiday_ID_V";
			            cmd.Parameters.Add(new SqlParameter("@Holiday_ID_V",newValues.HolidayID));
                    }
		            if(newValues.ClassIDIsValid)
			        {
			            updateString += ",Class_ID=@Class_ID_V";
			            cmd.Parameters.Add(new SqlParameter("@Class_ID_V",newValues.ClassID));
                    }
		            if(newValues.StartDateIsValid)
			        {
			            updateString += ",Start_Date=@Start_Date_V";
			            cmd.Parameters.Add(new SqlParameter("@Start_Date_V",newValues.StartDate));
                    }
		            if(newValues.EndDateIsValid)
			        {
			            updateString += ",End_Date=@End_Date_V";
			            cmd.Parameters.Add(new SqlParameter("@End_Date_V",newValues.EndDate));
                    }
		            if(newValues.AMStartIsValid)
			        {
			            updateString += ",AM_Start=@AM_Start_V";
			            cmd.Parameters.Add(new SqlParameter("@AM_Start_V",newValues.AMStart));
                    }
		            if(newValues.AMEndIsValid)
			        {
			            updateString += ",AM_End=@AM_End_V";
			            cmd.Parameters.Add(new SqlParameter("@AM_End_V",newValues.AMEnd));
                    }
		            if(searcher.HolidayIDIsValid)
			        {
			            condition += " and Holiday_ID=@Holiday_ID_C";
			            cmd.Parameters.Add(new SqlParameter("@Holiday_ID_C",searcher.HolidayID));
					}
		            if(searcher.ClassIDIsValid)
			        {
			            condition += " and Class_ID=@Class_ID_C";
			            cmd.Parameters.Add(new SqlParameter("@Class_ID_C",searcher.ClassID));
					}
		            if(searcher.StartDateIsValid)
			        {
			            condition += " and Start_Date=@Start_Date_C";

⌨️ 快捷键说明

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