62,268
社区成员
发帖
与我相关
我的任务
分享 //===============================================================================
// This File Created by [kkun] at 2009/4/14 9:01:43
// Msn:hebkkun@hotmail.com
// Desc:数据访问层分部类
//===============================================================================
using System;
using System.Data;
using System.Data.SqlClient;
using Tstring.Core.Base;
using Tstring.Core.Entity;
using Tstring.Core.Util;
namespace Tstring.Core.Data {
[Serializable]
public partial class TestDAL : DALBase<TestEntity> {
#region 单例模式
public static TestDAL Singleton = new TestDAL();
#endregion
#region field
DataBaseOperator db;
#endregion
#region 默认构造函数
public TestDAL() {
db = new DataBaseOperator();
}
#endregion
#region Insert
/// <summary>
/// 新增操作
/// </summary>
/// <param name="e">TestEntity实体</param>
/// <returns>自增编号</returns>
public override int Insert( TestEntity e ) {
//构造SQL语句
string sql = "INSERT INTO [Test] (Test)VALUES(@Test); SELECT @@Identity";
//构造参数
SqlParameter[] parameters = {
new SqlParameter("@Test",SqlDbType.NVarChar),
};
//为参数赋值
int i = 0;
parameters[ i++ ].Value = e.Test;
//执行SQL语句
try {
object obj = db.ExecuteScalar( CommandType.Text, sql, parameters ) ?? "-1";
int Identity;
if( int.TryParse( obj.ToString(), out Identity ) )
return Identity;
return -1;
} catch( Exception exp ) {
throw exp;
}
}
#endregion
#region Update
/// <summary>
/// 更新操作
/// </summary>
/// <param name="e">TestEntity实体</param>
/// <returns>成功或失败</returns>
public override bool Update( TestEntity e ) {
//构造SQL语句
string sql = "UPDATE [Test] SET Test=@Test WHERE ID=@ID ";
//构造参数
SqlParameter[] parameters = {
new SqlParameter("@ID",SqlDbType.Int),
new SqlParameter("@Test",SqlDbType.NVarChar),
};
//为参数赋值
int i = 0;
parameters[ i++ ].Value = e.ID;
parameters[ i++ ].Value = e.Test;
//执行SQL语句
try {
return db.ExecuteNonQuery( CommandType.Text, sql, parameters ) > 0;
} catch( Exception exp ) {
throw exp;
}
}
#endregion
#region Delete
/// <summary>
/// 删除操作
/// </summary>
/// <param name="e">TestEntity参数实体</param>
/// <returns>成功失败</returns>
public override bool Delete( TestEntity e ) {
//构造SQL语句
string sql = "DELETE FROM [Test] WHERE ID=@ID ";
//构造参数
SqlParameter[] parameters = {
new SqlParameter("@ID",SqlDbType.Int),
};
//为参数传值
int i = 0;
parameters[ i++ ].Value = e.ID;
//执行SQL语句
try {
return db.ExecuteNonQuery( CommandType.Text, sql, parameters ) > 0;
} catch( Exception exp ) {
throw exp;
}
}
#endregion
#region Select
/// <summary>
/// 查询操作
/// </summary>
/// <param name="e">TestEntity参数实体</param>
/// <returns>IDataReader</returns>
public override IDataReader Select( TestEntity e ) {
//构造SQL语句
string sql = "SELECT ID,Test FROM [Test] WHERE ID=@ID ";
//构造参数
SqlParameter[] parameters = {
new SqlParameter("@ID",SqlDbType.Int),
};
//为参数传值
int i = 0;
parameters[ i++ ].Value = e.ID;
//执行SQL语句
try {
return db.ExecuteReader( CommandType.Text, sql, parameters );
} catch( Exception exp ) {
throw exp;
}
}
/// <summary>
/// 查询所有
/// </summary>
/// <returns></returns>
public override IDataReader Select() {
//构造SQL语句
string sql = "SELECT ID,Test FROM [Test] WHERE 1=1 ";
//执行SQL语句
try {
return db.ExecuteReader( CommandType.Text, sql, null );
} catch( Exception exp ) {
throw exp;
}
}
#endregion
}
}