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

📄 addressbooks.cs

📁 手机串口编程 手机串口编程 手机串口编程
💻 CS
字号:
using System;
using System.Data.SqlClient;
using System.Data;

namespace JB.GraduateDesign.ESM.DataAccess
{
	using JB.GraduateDesign.ESM.Common;
	using JB.GraduateDesign.ESM.Entity;

	/// <summary>
	/// AddressBooks 的摘要说明。
	/// </summary>
	public class AddressBooks : IDisposable
	{
		private DataBaseOperate _dbo;

		public AddressBooks()
		{
			_dbo = new DataBaseOperate();
		}
		
		public bool DeleteAddressBook( int addressBookId)
		{
			SqlParameter[] sqlParams =
			{
				new SqlParameter( "@AddressBookId", SqlDbType.Int )
			};
			sqlParams[0].Value = addressBookId;

			int deletedRows = 0;
			try
			{
				deletedRows = Convert.ToInt32(_dbo.Execute( "DeleteAddressBook", sqlParams ));
			}
			catch( Exception e)
			{
				throw new ApplicationException( "访问数据库出现错误。", e );
			}
			if ( deletedRows == 0 )
			{
				return false;
			}
			else
			{
				return true;
			}
		}

		public AddressBookData SelectAddressBook(AddressBookQuery query)
		{
			AddressBookData data = new AddressBookData();
			SqlParameter[] sqlParams = 
			{
				new SqlParameter( "@AddressBookId", SqlDbType.Int ),
				new SqlParameter( "@OwnerUserId", SqlDbType.Int),
				new SqlParameter( "@AddressBookName", SqlDbType.Char, 20)
			};

			int i = 0;
			sqlParams[ i++ ].Value = query.AddressBookId;
			sqlParams[ i++ ].Value = query.OwnerUserId;
			sqlParams[ i++ ].Value = query.AddressBookName;

			try
			{
				_dbo.Search( "SelectAddressBook", data.AddressBook, sqlParams );
				_dbo.Search( "SelectAddressBookDetail", data.AddressBookDetail, sqlParams  );
			}
			catch( Exception e )
			{
				throw new ApplicationException( "访问数据库发生错误。", e );
			}

			return data;

		}

		public int InsertAddressBook( AddressBookData data )
		{
			_dbo.StartTransation();
			SqlParameter[] sqlParams = 
			{	
				new SqlParameter( "@OwnerUserId", SqlDbType.Int ),
				new SqlParameter( "@AddressBookName", SqlDbType.Char, 20 ),
				new SqlParameter( "@Remark", SqlDbType.VarChar, 255)
			};

			int index = 0;
			sqlParams[ index++ ].Value = data.AddressBook[0].OwnerUserId;
			sqlParams[ index++ ].Value = data.AddressBook[0].AddressBookName;
			sqlParams[ index++ ].Value = data.AddressBook[0].Remark;
			
			int addressBookId = Convert.ToInt32( _dbo.Execute("InsertAddressBook", sqlParams));
			

			SqlParameter[] sqlParams1 = 
			{	
				new SqlParameter( "@AddressBookId", SqlDbType.Int ),
				new SqlParameter( "@ContacterId", SqlDbType.Int)
			};

			for( int i = 0; i < data.AddressBookDetail.Count; i ++ )
			{
				sqlParams1[0].Value = addressBookId;
 				sqlParams1[1].Value = data.AddressBookDetail[i].ContacterId;

				_dbo.Execute( "InsertAddressBookDetail", sqlParams1 );
 			}

			try
			{
				_dbo.Commit();
			}
			catch(Exception e)
			{
				_dbo.RollBack();
				throw new ApplicationException( "访问数据库错误。", e );
			}
			finally
			{
				_dbo.Dispose();
			}
			
			return addressBookId;
		}

		#region IDisposable 成员

		public void Dispose()
		{
			Dispose(true);
			GC.SuppressFinalize(true); 
		}

		protected virtual void Dispose(bool disposing)
		{
			if (! disposing)
				return;

			if ( _dbo != null)
			{
				_dbo.Dispose();
				_dbo = null;
			}
		}

		#endregion
	}
}

⌨️ 快捷键说明

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