csharp: Procedure with DAO and DAL

简介: sql script code: CREATE TABLE DuCardType( CardTypeId INT IDENTITY(1,1) PRIMARY KEY, CardTypeName NVARCHAR(100) NOT NULL, --卡类名称 CardTypeColor NVARCHAR(50) NOT NULL --卡颜色(或样本))

sql script code:

CREATE TABLE DuCardType
(
	CardTypeId INT IDENTITY(1,1) PRIMARY KEY,
	CardTypeName NVARCHAR(100) NOT NULL,         --卡类名称
	CardTypeColor NVARCHAR(50) NOT NULL		     --卡颜色(或样本)
)
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Insert_DuCardType')
DROP PROCEDURE proc_Insert_DuCardType
GO
CREATE PROCEDURE proc_Insert_DuCardType
(
	@CardTypeName NVarChar(200),
	@CardTypeColor NVarChar(100)
)
 AS
 IF NOT EXISTS (SELECT * FROM  DuCardType WHERE [CardTypeName]=@CardTypeName)
BEGIN
INSERT INTO DuCardType
(
	[CardTypeName] ,
	[CardTypeColor]
)
	VALUES
(
	@CardTypeName ,
	@CardTypeColor
)
END
GO


IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Insert_DuCardTypeOutput')
DROP PROCEDURE proc_Insert_DuCardTypeOutput
GO
CREATE PROCEDURE proc_Insert_DuCardTypeOutput
(
	@CardTypeName NVarChar(200),
	@CardTypeColor NVarChar(100),
 	@CardTypeId int  output
)
AS
IF NOT EXISTS (SELECT * FROM  DuCardType WHERE [CardTypeName]=@CardTypeName)
BEGIN
INSERT INTO DuCardType
(
	[CardTypeName] ,
	[CardTypeColor]
)
	VALUES
(
	@CardTypeName ,
	@CardTypeColor
)
select @CardTypeId=@@IDENTITY
END
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Update_DuCardType')
DROP PROCEDURE proc_Update_DuCardType
GO
CREATE PROCEDURE proc_Update_DuCardType
(
	@CardTypeId Int,
	@CardTypeName NVarChar(200),
	@CardTypeColor NVarChar(100)
)
AS
IF NOT EXISTS (SELECT * FROM  DuCardType WHERE [CardTypeName]=@CardTypeName)
BEGIN
UPDATE DuCardType
	SET
		[CardTypeName]=@CardTypeName ,
		[CardTypeColor]=@CardTypeColor
	where
		[CardTypeId]=@CardTypeId
END
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Update_DuCardTypeField')
DROP PROCEDURE proc_Update_DuCardTypeField
GO
CREATE PROCEDURE proc_Update_DuCardTypeField
(
	@CardTypeId Int,
	@FieldValue NVARCHAR(1500)
)
AS
DECLARE @sql NVARCHAR(4000)
SET @sql='update  DuCardType set '+@FieldValue+' WHERE CardTypeId ='+ @CardTypeId
EXEC(@sql)
GO

IF EXISTS (select * from sysobjects where [name] = 'proc_Delete_DuCardType')
DROP PROCEDURE proc_Delete_DuCardType
GO
CREATE PROCEDURE proc_Delete_DuCardType
(
	@CardTypeId Int
)
as
DELETE
	DuCardType
	WHERE
		CardTypeId = @CardTypeId
GO

IF EXISTS (select * from sysobjects where [name] = 'proc_Delete_DuCardTypeId')
DROP PROCEDURE proc_Delete_DuCardTypeId
GO
CREATE PROCEDURE proc_Delete_DuCardTypeId
(
	@CardTypeId varchar(2000)
)
as
DECLARE @strsql varchar(3000)
SET @strsql='DELETE DuCardType WHERE CardTypeId in('+@CardTypeId+')'
EXEC(@strsql)
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardType')
DROP PROCEDURE proc_Select_DuCardType
GO
CREATE PROCEDURE proc_Select_DuCardType
(
	@CardTypeId Int
)
AS
SELECT * FROM DuCardType WHERE CardTypeId = @CardTypeId
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardTypeExists')
DROP PROCEDURE proc_Select_DuCardTypeExists
GO
CREATE PROCEDURE proc_Select_DuCardTypeExists
(
	@CardTypeId Int
)
AS
SELECT count(1) as H FROM DuCardType WHERE CardTypeId = @CardTypeId
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardTypeCount')
DROP PROCEDURE proc_Select_DuCardTypeCount
GO
CREATE PROCEDURE proc_Select_DuCardTypeCount
(
	@where NVARCHAR(1000)
)
AS
DECLARE @sql NVARCHAR(4000)
SET @sql='select count(*) as H from DuCardType '
IF @where<>''
	SET @sql=@sql+@where
EXEC(@sql)
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardTypeTitle')
DROP PROCEDURE proc_Select_DuCardTypeTitle
GO
CREATE PROCEDURE proc_Select_DuCardTypeTitle
(
	@FieldName NVARCHAR(100),
	@CardTypeId Int
)
AS
DECLARE @sql NVARCHAR(4000)
SET @sql='select top 1 '+@FieldName+' from DuCardType WHERE CardTypeId ='+ CAST(@CardTypeId AS VARCHAR(50))
EXEC(@sql)
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardTypeFuzzySearch')
DROP PROCEDURE proc_Select_DuCardTypeFuzzySearch
GO
CREATE PROCEDURE proc_Select_DuCardTypeFuzzySearch
(
	@FieldList NVARCHAR(1000),
	@where NVARCHAR(2000)
)
AS
DECLARE @sql NVARCHAR(4000)
IF(@where<>'')
	SET @where=' WHERE '+@where 
IF(@FieldList='')
	SET @FieldList=' * ' 
SET @sql='select '+@FieldList+' from DuCardType '+@where
EXEC(@sql)
GO

IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Select_DuCardTypeAll')
DROP PROCEDURE proc_Select_DuCardTypeAll
GO
CREATE PROCEDURE proc_Select_DuCardTypeAll
AS
SELECT * FROM DuCardType
GO

DAL

///<summary>
		/// 追加记录
		///</summary>
		///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
		///<returns>返回添加的记录条数</returns>
		public int InsertDuCardType(DuCardTypeInfo duCardType)
		{
			int ret = 0;
			try
			{
				SqlParameter[] par = new SqlParameter[]{
				new SqlParameter("@CardTypeName",SqlDbType.NVarChar,200),
				new SqlParameter("@CardTypeColor",SqlDbType.NVarChar,100),
				};
				par[0].Value = duCardType.CardTypeName;
				par[1].Value = duCardType.CardTypeColor;
				ret = DBHelper.ExecuteSql("proc_Insert_DuCardType", CommandType.StoredProcedure, par);
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		///<summary>
		/// 追加记录返回值
		///</summary>
		///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
		///<param name="CardTypeId">返回参数:CardTypeId</param>
		///<returns>返回是否添加的个数</returns>
		public int InsertDuCardTypeOutput (DuCardTypeInfo duCardType,out int cardTypeId)
		{
			int ret = 0;
			cardTypeId= 0;
			try
			{
				SqlParameter[] par = new SqlParameter[]{
				new SqlParameter("@CardTypeName",SqlDbType.NVarChar,200),
				new SqlParameter("@CardTypeColor",SqlDbType.NVarChar,100),
				new SqlParameter("@CardTypeId",SqlDbType.Int,8),
				};
				par[0].Value = duCardType.CardTypeName;
				par[1].Value = duCardType.CardTypeColor;
				par[2].Direction = ParameterDirection.Output;
				ret = DBHelper.ExecuteSql("proc_Insert_DuCardTypeOutput", CommandType.StoredProcedure, par);
			
				if(ret>0)
				{
				
					cardTypeId=(int)par[2].Value;
			
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		///<summary>
		///修改记录
		///</summary>
		///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
		///<returns>返回修改的多少记录数</returns>
		public int UpdateDuCardType(DuCardTypeInfo duCardType)
		{
			int ret = 0;
			try
			{
				SqlParameter[] par = new SqlParameter[]{
				new SqlParameter("@CardTypeId",SqlDbType.Int,4),
				new SqlParameter("@CardTypeName",SqlDbType.NVarChar,200),
				new SqlParameter("@CardTypeColor",SqlDbType.NVarChar,100),
				};
				par[0].Value = duCardType.CardTypeId;
				par[1].Value = duCardType.CardTypeName;
				par[2].Value = duCardType.CardTypeColor;
				ret = DBHelper.ExecuteSql("proc_Update_DuCardType", CommandType.StoredProcedure, par);
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		///<summary>
		/// 删除记录
		///</summary>
		///<param name="cardTypeId">输入参数:CardTypeId</param>
		///<returns>返回删除记录条数</returns>
		public bool DeleteDuCardType(int cardTypeId)
		{
			bool ret = false;
			try
			{
				SqlParameter par =new SqlParameter("@CardTypeId",cardTypeId);
				int temp = 0 ;
				temp = DBHelper.ExecuteSql("proc_Delete_DuCardType", CommandType.StoredProcedure, par);
				if(temp!=0)
				{
					ret = true;
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		///<summary>
		/// 删除多条记录
		///</summary>
		///<param name="cardTypeId">输入参数:CardTypeId</param>
		///<returns>返回删除多少记录</returns>
		public bool DeleteDuCardTypeId(string cardTypeId)
		{
			bool ret = false;
			try
			{
				SqlParameter par =new SqlParameter("@CardTypeId",cardTypeId);
				int temp = 0 ;
				temp = DBHelper.ExecuteSql("proc_Delete_DuCardTypeId", CommandType.StoredProcedure, par);
				if(temp!=0)
				{
					ret = true;
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		///<summary>
		/// 查询记录
		///</summary>
		///<param name="cardTypeId">输入参数:CardTypeId</param>
		///<returns>返回DuCardTypeInfo</returns>
		public DuCardTypeInfo SelectDuCardType(int cardTypeId)
		{
			DuCardTypeInfo duCardType = null;
			try
			{
				SqlParameter par =new SqlParameter("@CardTypeId",cardTypeId);
				using (SqlDataReader reader = DBHelper.GetReader("proc_Select_DuCardType", CommandType.StoredProcedure, par))
				{
					if (reader.Read())
					{
						duCardType = new DuCardTypeInfo();
						duCardType.CardTypeId =(!DBNull.Equals(reader["CardTypeId"],null))? (int) reader["CardTypeId"]:0;
						duCardType.CardTypeName =(!DBNull.Equals(reader["CardTypeName"],null))? (string) reader["CardTypeName"].ToString():"";
						duCardType.CardTypeColor =(!DBNull.Equals(reader["CardTypeColor"],null))? (string) reader["CardTypeColor"].ToString():"";
						
					}
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return duCardType;
		}
		
		///<summary>
		/// 查询所有记录
		///</summary>
		///<param name="cardTypeId">无输入参数</param>
		///<returns>返回表所有记录(List)DuCardTypeInfo</returns>
		public List<DuCardTypeInfo> SelectDuCardTypeAll()
		{
			List<DuCardTypeInfo> list = new List<DuCardTypeInfo>();
			DuCardTypeInfo duCardType = null;
			try
			{
				using (SqlDataReader reader = DBHelper.GetReader("proc_Select_DuCardTypeAll", CommandType.StoredProcedure, null))
				{
					while (reader.Read())
					{
						duCardType = new DuCardTypeInfo();
						duCardType.CardTypeId =(!DBNull.Equals(reader["CardTypeId"],null))? (int) reader["CardTypeId"]:0;
						duCardType.CardTypeName =(!DBNull.Equals(reader["CardTypeName"],null))? (string) reader["CardTypeName"].ToString():"";
						duCardType.CardTypeColor =(!DBNull.Equals(reader["CardTypeColor"],null))? (string) reader["CardTypeColor"].ToString():"";
						list.Add(duCardType);
						
					}
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return list;
		}
		///<summary>
		/// 查询所有记录
		///</summary>
		///<param name="cardTypeId">无输入参数</param>
		///<returns>返回(DataTable)DuCardType表所有记录</returns>
		public DataTable SelectDuCardTypeDataTableAll()
		{
			DataTable dt = new DataTable();
			try
			{
				using (DataTable reader = DBHelper.GetTable("proc_Select_DuCardTypeAll", CommandType.StoredProcedure, null))
				{
					dt = reader;
						
					
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return dt;
		}
		/// <summary>
		/// SQL script查询分页
		/// </summary>
		/// <param name="pageSize">每页页数</param>
		/// <param name="currentPage">当前页码</param>
		/// <param name="strWhere">查询的条件</param>
		/// <param name="filedOrder">排序字段</param>
		/// <param name="recordCount">每页的记录数</param>
		/// <returns></returns>
		public DataSet GetPageList(int pageSize, int currentPage, string strWhere, string filedOrder, out int recordCount)
		{
			int topNum = pageSize * currentPage;
			StringBuilder strSql = new StringBuilder();
			strSql.Append("select * FROM DuCardType");
			if (strWhere.Trim() !="")
			{
				strSql.Append(" where " + strWhere);
			}
			recordCount = Convert.ToInt32(DBHelper.GetSingle(PagingHelper.CreateCountingSql(strSql.ToString())));
			return DBHelper.Query(PagingHelper.CreatePagingSql(recordCount, pageSize, currentPage, strSql.ToString(), filedOrder));
		}
		/// <summary>
		/// 模糊查询
		/// </summary>
		/// <param name="filedlist">显示字段列表</param>
		/// <param name="strkey">输入的关键字</param>
		/// <returns></returns>
		public DataTable GetDataTableDuCardTypeFuzzySearch(string filedlist, string strkey)
		{
			DataTable dt = new DataTable();
			try
			{
				SqlParameter[] par = new SqlParameter[]{
					new SqlParameter("@FieldList",SqlDbType.NVarChar,2000),//可以考虑类型
					new SqlParameter("@where",SqlDbType.NVarChar,1000),
				};
				par[0].Value = filedlist;
				par[1].Value = StringConvert.getStrWhere("CardTypeName,CardTypeColor",strkey);//获取字段为字符串的字段列表(varchar,nvarchar,text,ntext)
				using (DataTable reader = DBHelper.GetTable("proc_Select_DuCardTypeFuzzySearch", CommandType.StoredProcedure, par))
				{
					dt = reader;
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return dt;
			}
		/// <summary>
		/// 是否存在该记录
		/// </summary>
		/// <param name="Id"></param>
		/// <returns></returns>
		public bool Exists(int Id)
		{
			bool isok = false;
			int count = 0;
			try
			{
				SqlParameter par = new SqlParameter("@Id", Id);
				using (SqlDataReader reader = DBHelper.GetReader("proc_Select_DuCardTypeExists", CommandType.StoredProcedure, par))
				{
					if (reader.Read())
					{
						count = (!DBNull.Equals(reader["H"], null)) ? (int)reader["H"] : 0;
						if (count > 0)
							isok = true;
						}
					}
				}
				catch (SqlException ex)
				{
					throw ex;
				}
				return isok;
		}
		/// <summary>
		/// 返回数据总数
		/// </summary>
		/// <param name="strWhere">查询条件</param>
		/// <returns></returns>
		public int GetCount(string where)
		{
			int count = 0;
			try
			{
				SqlParameter par = new SqlParameter("@where", where);
				using (SqlDataReader reader = DBHelper.GetReader("proc_Select_DuCardTypeCount", CommandType.StoredProcedure, par))
				{
					if (reader.Read())
					{
						count = (!DBNull.Equals(reader["H"], null)) ? (int)reader["H"] : 0;
					}
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return count;
		}
		/// <summary>
		/// 更新一列数据
		/// </summary>
		/// <param name="Id"></param>
		/// <param name="strValue">字段名=值</param>
		/// <returns></returns>
		public int UpdateField(int Id, string fieldValue)
		{
			int ret = 0;
			try
			{
				SqlParameter[] par = new SqlParameter[]{
					new SqlParameter("@Id",SqlDbType.Int,4),
					new SqlParameter("@FieldValue",SqlDbType.NVarChar,2000),
				};
				par[0].Value = Id;
				par[1].Value = fieldValue;
				ret = DBHelper.ExecuteSql("proc_Update_DuCardTypeField", CommandType.StoredProcedure, par);
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return ret;
		}
		/// <summary>
		/// 返回指字字段的字串
		/// </summary>
		/// <param name="Id"></param>
		/// <param name="fieldName">字段名</param>
		/// <returns></returns>
		public string GetTitle(int Id, string fieldName)
		{
			string title = string.Empty;
			try
			{
				SqlParameter[] par = new SqlParameter[]{
					new SqlParameter("@FieldName",SqlDbType.NVarChar,2000),
					new SqlParameter("@Id",SqlDbType.Int,4),
				};
				par[0].Value = fieldName;
				par[1].Value = Id;
				using (SqlDataReader reader = DBHelper.GetReader("proc_Select_DuConfigTitle", CommandType.StoredProcedure, par))
				{
					title =(!DBNull.Equals(reader[0],null))? (string) reader[0]:"";
				}
			}
			catch (SqlException ex)
			{
				throw ex;
			}
			return title;
		}
		/// <summary>
		/// 存储过程分页
		/// </summary>
		/// <param name="strwhere">Where条件</param>
		/// <param name="aecdesc">排序字段</param>
		/// <param name="pageIndex">开始页码</param>
		/// <param name="pageSize">每页页数</param>
		/// <param name="RecordCount">输出总页数</param>
		/// <returns></returns>
		public DataTable GetDataPage(string strwhere,string aecdesc, int pageIndex, int pageSize, out int RecordCount)
		{
			DataTable dt = new DataTable();
			try
			{
				SqlParameter[] par = new SqlParameter[]{
					new SqlParameter("@Table",SqlDbType.NVarChar,400), //表名
					new SqlParameter("@TIndex",SqlDbType.NVarChar,1000),//主键,可以带表头
					new SqlParameter("@Column",SqlDbType.NVarChar,200),//读取字段
					new SqlParameter("@Sql",SqlDbType.NVarChar,1600),//Where条件
					new SqlParameter("@PageIndex",SqlDbType.Int, 8),//开始页码
					new SqlParameter("@PageSize",SqlDbType.Int, 8),//页大小
					new SqlParameter("@Sort",SqlDbType.NVarChar,1600),//排序字段
					};
				if (string.IsNullOrEmpty(strwhere))
				{
					strwhere = " 1=1 ";
				}
				par[0].Value = "DuCardType"; //表名
				par[1].Value = "CardTypeId";
				par[2].Value = " * ";
				par[3].Value = strwhere;//查询条件
				par[4].Value = pageIndex;
				par[5].Value = pageSize;
				par[6].Value = aecdesc;
				using (DataTable reader = DBHelper.GetTable("GetPagedRecordFor2005_2008", CommandType.StoredProcedure, par))
				{
					dt = reader;
					RecordCount = dt.Rows.Count;
				}
			}
			catch (SqlException ex)
			{
				RecordCount = 0;
				throw ex;
			}
			return dt;
		}
		
	}

DAO:

 ///<summary>
        /// 追加记录
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<returns>返回添加的记录条数</returns>
        public int InsertDuCardType(DuCardType duCardType)
        {
            int saveid = 0;
            //DuCardType info = null;
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            ITransaction tran = session.BeginTransaction();
            try
            {
                if (!object.Equals(session, null))
                {
                    //2.
                    session.Save(duCardType);
                   
                    //1
                    //string sql = @"exec GetDepartmentId @Id=:Id";// @"exec GetDepartmentId :Id";
                    //IQuery query = session.CreateSQLQuery(sql)  //CreateSQLQuery(sql) //GetNamedQuery("GetDepartmentId")                          
                    //       .SetParameter("Id", 1)                     
                    //       .SetResultTransformer(
                    //        Transformers.AliasToBean(typeof(DuCardTypeInfo)));
                    //var clients = query.UniqueResult();// query.List<Department>().ToList(); //不能强制转化
                    //info = (DuCardTypeInfo)clients; //无法将类型为“System.Object[]”的对象强制转换为类型
                    //关联的数据也查出来了    

                    //string sql = @"exec proc_Insert_DuCardType @CardTypeName = :CardTypeName,@CardTypeColor = :CardTypeColor ";// @"exec GetDepartmentId :Id";
                    //IQuery query = session.CreateSQLQuery(sql)  //CreateSQLQuery(sql) //GetNamedQuery("GetDepartmentId")                          
                    //       .SetParameter("CardTypeName", duCardType.CardTypeName)
                    //        .SetParameter("CardTypeColor", duCardType.CardTypeColor)
                    //       .SetResultTransformer(
                    //        Transformers.AliasToBean(typeof(DuCardType)));

                    //IQuery query = session.CreateSQLQuery(sql)                           
                    //       .SetParameter("CardTypeName", duCardType.CardTypeName)
                    //       .SetParameter("CardTypeColor", duCardType.CardTypeColor);
                    //query.SetParameter("CardTypeName", duCardType.CardTypeName, NHibernateUtil.String);
                    //query.SetParameter("CardTypeColor", duCardType.CardTypeColor, NHibernateUtil.String);
                    //query.ExecuteUpdate();


                    //IQuery query = session.CreateSQLQuery(sql)
                    //    .SetString("CardTypeName", duCardType.CardTypeName)
                    //    .SetString("CardTypeColor", duCardType.CardTypeColor);
                    //.ExecuteUpdate();

                    //IQuery query = session.CreateSQLQuery("UPDATE DuCardType as c set c.CardTypeName =?,c.CardTypeColor=? where c.CardTypeId = ? ")
                    //    .SetString(0, duCardType.CardTypeName)
                    //    .SetString(1, duCardType.CardTypeColor)
                    //    .executeUpdate();

                    //                    IQuery query = session.CreateSQLQuery(@"insert into DuCardType (CardTypeName, CardTypeColor)
                    //                                        values (:cardTypeName, :cardTypeColor)")
                    //                          .SetParameter("cardTypeName", duCardType.CardTypeName, NHibernateUtil.String)
                    //                          .SetParameter("cardTypeColor", duCardType.CardTypeColor, NHibernateUtil.String);

                   // IQuery query = session.CreateSQLQuery(@"insert into DuCardType (CardTypeName, CardTypeColor) vlaues('" + duCardType.CardTypeName + "','" + duCardType.CardTypeColor + "')");

                    //int result = query.ExecuteUpdate();

                   // saveid = query.ExecuteUpdate();

                    tran.Commit();
                    saveid = 1;

                }
            }
            catch (MappingException ex)
            {
                saveid = 0;
                tran.Rollback();
                ex.Message.ToString();
            }
            return saveid;
            //return dal.InsertDuCardType(duCardType);
        }
        ///<summary>
        /// 存储过程追加记录
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<returns>返回添加的记录条数</returns>
        public int InsertDuCardTypeProc(DuCardType duCardType)
        {
            int ret = 0;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                };
                par[0].ParameterName = "@CardTypeName";
                par[0].Value = duCardType.CardTypeName;
                par[1].ParameterName = "@CardTypeColor";
                par[1].Value = duCardType.CardTypeColor;
                ret = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Insert_DuCardType", par);
               

            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }


            return ret;
        }
        ///<summary>
        /// 追加记录返回值
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<param name="CardTypeId">返回参数:CardTypeId</param>
        ///<returns>返回是否添加的个数</returns>
        public int InsertDuCardTypeOutput(DuCardType cardType, out int cardTypeId)
        {

            int sid = 1;
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            ITransaction tran = session.BeginTransaction();
            try
            {
                session.Save(cardType);
                cardTypeId = cardType.CardTypeId;
                tran.Commit();
            }
            catch (MappingException ex)
            {
                sid = 0;
                tran.Rollback();
                throw ex;

            }

            return sid;

            //return dal.InsertDuCardTypeOutput(duCardType,out cardTypeId);
        }
        ///<summary>
        /// 存储过程追加记录返回值
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<param name="CardTypeId">返回参数:CardTypeId</param>
        ///<returns>返回是否添加的个数</returns>
        public int InsertDuCardTypeOutputProc(DuCardType duCardType, out int cardTypeId)
        {
            int rets = 0;
            cardTypeId = 0;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                    new SqlParameter(),
                };
                par[0].ParameterName = "@CardTypeName"; 
                par[0].Value = duCardType.CardTypeName;
                par[1].ParameterName = "@CardTypeColor";
                par[1].Value = duCardType.CardTypeColor;
                par[2].ParameterName = "@CardTypeId";
                par[2].Size = 10;
                par[2].DbType = DbType.Int32;
                par[2].Direction = ParameterDirection.Output;
                rets = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Insert_DuCardTypeOutput", par);
                if (rets > 0)
                {
                    cardTypeId = int.Parse(par[2].Value.ToString());
                }
            

            }
            catch (NotImplementedException ex)
            {
                rets = 0;
                ex.Message.ToString();
            }
            return rets;
        }
        ///<summary>
        ///修改记录
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<returns>返回修改的多少记录数</returns>
        public int UpdateDuCardType(DuCardType duCardType)
        {
            int sid = 1;
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            ITransaction tran = session.BeginTransaction();
            try
            {
                session.Update(duCardType);
                tran.Commit();
            }
            catch (Exception ex)
            {
                sid = 0;
                tran.Rollback();
                throw ex;

            }

            return sid;
            //return dal.UpdateDuCardType(duCardType);
        }

         ///<summary>
        ///存储过程修改记录
        ///</summary>
        ///<param name="DuCardType">输入参数:DuCardTypeInfo</param>
        ///<returns>返回修改的多少记录数</returns>
        public int UpdateDuCardTypeProc(DuCardType duCardType)
        {

            int rets = 0;
        
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                    new SqlParameter(),
                };
                par[0].ParameterName = "@CardTypeId";
                par[0].Value = duCardType.CardTypeId;
                par[1].ParameterName = "@CardTypeName";
                par[1].Value = duCardType.CardTypeName;
                par[2].ParameterName = "@CardTypeColor";
                par[2].Value = duCardType.CardTypeColor;
                rets = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Update_DuCardType", par);
             

            }
            catch (NotImplementedException ex)
            {
                rets = 0;
                ex.Message.ToString();
            }
            return rets;

        }

        /// <summary>
        /// 查询所有
        /// </summary>
        /// <returns></returns>
        public IQueryable<DuCardType> GetAllCardTypes()
        {
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            //if (!object.Equals(session, null))
            //{
            //    string s = "";
            //}
            var query = session.Query<DuCardType>();
            var result = from cardType in query
                         orderby cardType.CardTypeName //名字排序
                         select cardType;
            return result;


        }
        /// <summary>
        /// Sql查询
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IList<DuCardType> CardTypeSql(int id)
        {

            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            IList<DuCardType> card = new List<DuCardType>();
            if (!object.Equals(session, null))
            {
                //写法1
                //return card = session.CreateQuery("from DuCardType c where c.CardTypeName='" + firstname + "'")
                //    .List<DuCardType>();

                //写法2:位置型参数
                //card = session.CreateQuery("from DuCardType c where c.CardTypeId=:CardTypeId")
                //    .SetInt32("CardTypeId", id)
                //    .List<DuCardType>();
                //写法4.
                //var sql = "select * from DuCardType";
                //var query = session.CreateSQLQuery(sql)
                //.AddScalar("CardTypeId", NHibernateUtil.Int32)
                //.AddScalar("CardTypeName", NHibernateUtil.String)
                //.AddScalar("CardTypeColor", NHibernateUtil.String)
                //.SetResultTransformer(Transformers.AliasToBean<DuCardType>());
                //card = query.List<DuCardType>();  

                //写法3:命名型参数(推荐)
                var query = session.CreateSQLQuery("Select * FROM DuCardType where CardTypeId=:CardTypeId")
                    .SetInt32("CardTypeId", id)
                    .SetResultTransformer(Transformers.AliasToBean(typeof(DuCardType)));
                card = query.List<DuCardType>();
            }
            return card;

        }
        /// <summary>
        /// 存储过程查询
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IList<DuCardType> CardTypeProcedures(int id)
        {
            //读到数据
            IList<DuCardType> li = null;
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();

            try
            {

                IQuery query = session.GetNamedQuery("proc_Select_DuCardType")
                     .SetParameter("CardTypeId", id)
                     .SetResultTransformer(
                     Transformers.AliasToBean(typeof(DuCardType)));
                li = query.List<DuCardType>();

                //var executor = new HibernateStoredProcedureExecutor(session);
                //var lie = executor.ExecuteStoredProcedure<DuCardType>(
                //  "proc_Select_DuCardType",  //find no
                //  new[]
                //  {
                //      new SqlParameter("CardTypeId", id),
                //      //new SqlParameter("startDate", startDate),
                //     // new SqlParameter("endDate", endDate),
                //  });
                //li = lie.ToList();
                //return li;



                //string sql = @"exec proc_Select_DuCardType :CardTypeId";
                //IQuery query = session.CreateSQLQuery(sql)
                //    .SetInt32("CardTypeId", id);
                //var list = query.List();
                //foreach (object[] item in list)
                //{
                //    li = new List<DuCardType>();
                //    var cardType = new DuCardType();
                //    cardType.CardTypeId = (int)item[0];
                //    cardType.CardTypeName = (string)item[1];
                //    cardType.CardTypeColor = item[2].ToString();
                //    li.Add(cardType);
                //}

                ////query = query.SetResultTransformer(Transformers.AliasToBean<OrderDto>());
                ////var list2 = query.List<OrderDto>();

                //var result = from cardType in li
                //             orderby cardType.CardTypeName //名字排序
                //             select cardType;
            }
            catch (MappingException ex)
            {
                ex.Message.ToString();
            }
            return li;

        }

        /// <summary>
        /// Linq查询
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IQueryable<DuCardType> getCardTypeID(int id)
        {
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            var query = session.Query<DuCardType>();
            var result = from cardType in query
                         where cardType.CardTypeId == id
                         select cardType;
            return result;
        }
       

        ///<summary>
        /// 删除记录
        ///</summary>
        ///<param name="cardTypeId">输入参数:CardTypeId</param>
        ///<returns>返回删除记录条数</returns>
        public bool DeleteDuCardType(int cardTypeId)
        {
            bool isok = false;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {                   
					new SqlParameter(),
                };
                par[0].ParameterName = "@CardTypeId";
                par[0].Value = cardTypeId;
                isok = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Delete_DuCardType");
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }

            return isok;


            //return dal.DeleteDuCardType(cardTypeId);
        }

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="customer"></param>
        /// <returns></returns>
        public int Dell(DuCardType cardType)
        {
            int sid = 1;
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            ITransaction tran = session.BeginTransaction();
            try
            {
                session.Delete(cardType);
                tran.Commit();
            }
            catch (Exception ex)
            {
                sid = 0;
                tran.Rollback();
                throw ex;

            }
            return sid;
        }

        ///<summary>
        /// 删除多条记录
        ///</summary>
        ///<param name="cardTypeId">输入参数:CardTypeId</param>
        ///<returns>返回删除多少记录</returns>
        public int DeleteDuCardTypeId(string cardTypeId)
        {
            int isok = 0;           
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {                   
					new SqlParameter(),
                };
                par[0].ParameterName = "@CardTypeId";
                par[0].Value = cardTypeId;
                isok = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Delete_DuCardTypeId",par);
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }

            return isok;

            //return dal.DeleteDuCardTypeId(cardTypeId);
        }

        ///<summary>
        /// 查询记录
        ///</summary>
        ///<param name="cardTypeId">输入参数:CardTypeId</param>
        ///<returns>返回DuCardTypeInfo</returns>
        public DuCardType SelectDuCardType(int cardTypeId)
        {
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();

            //var query = session.CreateQuery("");
            var query =session.Query<DuCardType>() ;// ;session.Get<DuCardType>(cardTypeId)
            var result = from cardType in query
                         where cardType.CardTypeId == cardTypeId
                         select cardType;
            List<DuCardType> ty = query.ToList<DuCardType>();
            return ty[0];
            //return dal.SelectDuCardType(cardTypeId);
        }


        ///<summary>
        /// 查询所有记录
        ///</summary>
        ///<param name="cardTypeId">无输入参数</param>
        ///<returns>返回表所有记录(List)DuCardTypeInfo</returns>
        public List<DuCardType> SelectDuCardTypeAll()
        {
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            var query = session.Query<DuCardType>();
            var result = from cardType in query
                         select cardType;

            List<DuCardType> list = result.ToList<DuCardType>();
            return list;
            //return dal.SelectDuCardTypeAll();
        }

        ///<summary>
        /// 查询所有记录
        ///</summary>
        ///<param name="cardTypeId">无输入参数</param>
        ///<returns>返回(DataTable)DuCardType表所有记录</returns>
        public DataTable SelectDuCardTypeDataTableAll()
        {
            DataTable dt = new DataTable();
            try
            {

                dt = DBHelper.ExecuteDataTable(SessionFactory, CommandType.StoredProcedure, "proc_Select_DuCardTypeAll");

            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }
            return dt;

            //return dal.SelectDuCardTypeDataTableAll();
        }

        /// <summary>
        /// SQL script查询分页
        /// </summary>
        /// <param name="pageSize">每页页数</param>
        /// <param name="currentPage">当前页码</param>
        /// <param name="strWhere">查询的条件</param>
        /// <param name="filedOrder">排序字段</param>
        /// <param name="recordCount">每页的记录数</param>
        /// <returns></returns>
        public DataSet GetPageList(int pageSize, int currentPage, string strWhere, string filedOrder, out int recordCount)
        {

            DataSet ds = new DataSet();
            recordCount = 0;
            try
            {

                int topNum = pageSize * currentPage;
                StringBuilder strSql = new StringBuilder();
                strSql.Append("select * FROM DuCardType");
                if (strWhere.Trim() != "")
                {
                    strSql.Append(" where " + strWhere);
                }
                recordCount = Convert.ToInt32(DBHelper.ExecuteScalar(SessionFactory, CommandType.Text,PagingHelper.CreateCountingSql(strSql.ToString())));
                ds=DBHelper.ExecuteDataSet(SessionFactory, CommandType.Text, PagingHelper.CreatePagingSql(recordCount, pageSize, currentPage, strSql.ToString(), filedOrder));


            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }
            return ds;
            
            //return dal.GetPageList(pageSize, currentPage, strWhere, filedOrder, out recordCount);
        }

        /// <summary>
        /// 模糊查询
        /// </summary>
        /// <param name="filedlist">显示字段列表</param>
        /// <param name="strkey">输入的关键字</param>
        /// <returns></returns>
        public DataTable GetDataTableDuCardTypeFuzzySearch(string filedlist, string strkey)
        {
            DataTable dt = new DataTable();
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                };
                par[0].ParameterName = "@FieldList"; //表名
                par[0].Value = filedlist;
                par[1].ParameterName = "where";
                par[1].Value = StringConvert.getStrWhere("CardTypeName,CardTypeColor", strkey); ;
                dt = DBHelper.ExecuteDataTable(SessionFactory, CommandType.StoredProcedure, "proc_Select_DuCardTypeFuzzySearch", par);

            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }
            return dt;
            //return dal.GetDataTableDuCardTypeFuzzySearch(filedlist, strkey);
        }

        /// <summary>
        /// 是否存在该记录
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public bool Exists(int Id)
        {
            bool isok=false;
            int i = 0;           
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {                   
					new SqlParameter(),
                };
                par[0].ParameterName = "@Id";
                par[0].Value = Id;
                using (IDataReader reader = DBHelper.ExecuteReader(SessionFactory, CommandType.StoredProcedure, "proc_Select_DuCardTypeExists", par))
                {
                        i = (!DBNull.Equals(reader["H"], null)) ? (int)reader["H"] : 0;
						if (i > 0)
							isok = true;
					
                }     
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }

            return isok;
            //return dal.Exists(Id);
        }

        /// <summary>
        /// 返回数据总数
        /// </summary>
        /// <param name="strWhere">查询条件</param>
        /// <returns></returns>
        public int GetCount(string where)
        {
            int i = 0;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {                   
					new SqlParameter(),
                };
                par[0].ParameterName = "@where";
                par[0].Value = where;
                object obj = DBHelper.ExecuteScalar(SessionFactory, CommandType.StoredProcedure, "proc_Select_DuCardTypeCount", par);
                i = (int)obj;
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }

            return i;
            //return dal.GetCount(where);
        }

        /// <summary>
        /// 更新一列数据
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="strValue">字段名=值</param>
        /// <returns></returns>
        public int UpdateField(int Id, string fieldValue)
        {

            int ret = 0;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                };
                par[0].ParameterName = "@Id"; //表名
                par[0].Value =Id ;
                par[1].ParameterName = "@FieldValue";
                par[1].Value = fieldValue;
                ret = DBHelper.ExecuteNonQuery(SessionFactory, CommandType.StoredProcedure, "proc_Update_DuCardTypeField", par);
               
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }


            return ret;
            //return dal.UpdateField(Id, fieldValue);
        }

        /// <summary>
        /// 返回指字字段的字串
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="fieldName">字段名</param>
        /// <returns></returns>
        public string GetTitle(int Id, string fieldName)
        {
            string title = string.Empty;
            try
            {
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), 
					new SqlParameter(),
                };
                par[0].ParameterName = "@FieldName"; 
                par[0].Value = fieldName;
                par[1].ParameterName = "@Id";
                par[1].Value = Id;
                object obj = DBHelper.ExecuteScalar(SessionFactory, CommandType.StoredProcedure, "proc_Select_DuConfigTitle", par);
                title = obj.ToString();
            }
            catch (NotImplementedException ex)
            {
                ex.Message.ToString();
            }

            return title;
            //return dal.GetTitle(Id, fieldName);

        }

        /// <summary>
        /// 存储过程分页
        /// 涂聚文 2016.07.03
        /// </summary>
        /// <param name="strwhere">Where条件</param>
        /// <param name="aecdesc">排序字段</param>
        /// <param name="pageIndex">开始页码</param>
        /// <param name="pageSize">页大小</param>
        /// <param name="RecordCount">输出总页数</param>
        /// <returns></returns>
        public DataTable GetDataPage(string strwhere, string aecdesc, int pageIndex, int pageSize, out int RecordCount)
        {
            NHibernate.ISession session = this.SessionFactory.GetCurrentSession();
            DataSet data = new DataSet();
            try
            {

                //SessionFactory.ConnectionProvider.Driver
                IDbCommand cmd = SessionFactory.OpenSession().Connection.CreateCommand();
                //cmd.CommandText = "testaa";


                //IDbConnection con = session.Connection;
                //Type conType = con.GetType();
                //string conTypeName = conType.FullName;
                // if (!conTypeName.EndsWith("Connection"))
                //    throw new Exception("Unable to interpret connection type name: " + conTypeName);
                //string adapterTypeName = conTypeName.Substring(0, conTypeName.Length - 10) + "DataAdapter";


                IDbDataAdapter adapter = new SqlDataAdapter();

                //IDbDataAdapter adapter = conType.Assembly.CreateInstance(adapterTypeName) as IDbDataAdapter;
                //if (adapter == null)
                //    throw new Exception("Unable to load IDbDataAdapter: " + adapterTypeName);  
                // IDbCommand cmd = con.CreateCommand();
                //1.
               // cmd.CommandText = "GetPagedRecordFor2005_2008";
               // cmd.CommandType = CommandType.StoredProcedure;
               // IDbDataParameter p = new SqlParameter();// cmd.CreateParameter();
               // IDbDataParameter p1 = cmd.CreateParameter();
               // IDbDataParameter p2 = cmd.CreateParameter();
               // IDbDataParameter p3 = cmd.CreateParameter();
               // IDbDataParameter p4 = cmd.CreateParameter();
               // IDbDataParameter p5 = cmd.CreateParameter();
               // IDbDataParameter p6 = cmd.CreateParameter();
               //// IDbDataParameter p7 = cmd.CreateParameter();

               // if (string.IsNullOrEmpty(strwhere))
               // {
               //     strwhere = " 1=1 ";
               // }
               // p.ParameterName = "Table";
               // p.Value = "DuCardType";

               // p1.ParameterName = "TIndex";
               // p1.Value = "CardTypeId";

               // p2.ParameterName = "Column";
               // p2.Value = " * "; 

               // p3.ParameterName = "Sql";
               // p3.Value = strwhere;

               // p4.ParameterName = "PageIndex";
               // p4.Value = pageIndex;

               // p5.ParameterName = "PageSize";
               // p5.Value = pageSize;

               // p6.ParameterName = "Sort";
               // p6.Value = aecdesc;

               // //p1.ParameterName = "geovindu";
               // //p1.Size = 10;
               // //p1.Direction = ParameterDirection.Output;


                //输出值
               // //p7.ParameterName = "TotalRecords";
               // //p7.Size = 10;
               // //p7.Direction = ParameterDirection.Output;

               // cmd.Parameters.Add(p);
               // cmd.Parameters.Add(p1);
               // cmd.Parameters.Add(p2);
               // cmd.Parameters.Add(p3);
               // cmd.Parameters.Add(p4);
               // cmd.Parameters.Add(p5);
               // cmd.Parameters.Add(p6);
               //// cmd.Parameters.Add(p7);
               // adapter.SelectCommand = cmd;
               // adapter.Fill(data);
               // //RecordCount =(int)p7.Value;         
               // cmd.Cancel();
               // cmd.Dispose();


                //2.      
                IDbDataParameter[] par = new SqlParameter[]
                {
                    new SqlParameter(), //表名
					new SqlParameter(),//主键,可以带表头
					new SqlParameter(),//读取字段
					new SqlParameter(),//Where条件
					new SqlParameter(),//开始页码
					new SqlParameter(),//页大小
					new SqlParameter(),//排序字段

                };
                if (string.IsNullOrEmpty(strwhere))
                {
                    strwhere = " 1=1 ";
                }
                par[0].ParameterName = "@Table"; //表名
                par[0].Value = "DuCardType";
                par[1].ParameterName = "@TIndex";
                par[1].Value = "CardTypeId";
                par[2].ParameterName = "@Column";
                par[2].Value = " * ";
                par[3].ParameterName = "@Sql";//查询条件
                par[3].Value = strwhere;
                par[4].ParameterName = "@PageIndex";
                par[4].Value = pageIndex;
                par[5].ParameterName = "@PageSize";
                par[5].Value = pageSize;
                par[6].ParameterName = "@Sort";
                par[6].Value = aecdesc;
                data = DBHelper.ExecuteDataSet(SessionFactory, CommandType.StoredProcedure, "GetPagedRecordFor2005_2008", par);

                RecordCount = data.Tables[0].Rows.Count;

            }
            catch (NotImplementedException ex)
            {

                RecordCount = 0;
                ex.Message.ToString();
            }

            return data.Tables[0];

           // return dal.GetDataPage(strwhere, aecdesc, pageIndex, pageSize, out RecordCount);
        }



目录
相关文章
|
9月前
|
SQL 数据库
编写SQLHelper类
编写SQLHelper类
46 1
|
SQL 索引
开发指南—DAL语句—SETCHECK TABLE
本文介绍了CHECK TABLE语句的用法。
开发指南—DAL语句—SET—SETSET NAMES
您可以使用SET NAMES语句设置字符集。该语句会将character_set_client,character_set_connection和character_set_results设置为给定的字符集。
|
SQL 数据可视化 关系型数据库
7 款常用的 PostgreSQL GUI 工具测评
PostgreSQL 本身附带一个名为 psql 的内置 CLI,但有些人不喜欢通过命令行编写查询。本篇文章,码匠列举和介绍了可用于查询、可视化与分析 PostgreSQL 数据的 GUI 工具。
8334 0
7 款常用的 PostgreSQL GUI 工具测评
|
数据库 容器
Entity Framework Core(3)-配置DbContext
设计时 DbContext 配置 EF Core 设计时工具如迁移需要能够发现和创建的工作实例DbContext以收集有关应用程序的实体类型以及它们如何映射到数据库架构的详细信息的类型。 此过程可以为自动,只要该工具可以轻松地创建DbContext,会将其配置同样到它如何将配置在运行时的方式。
910 0
|
数据库 数据库连接 SQL

热门文章

最新文章