通过 Long Id 获得 BaseModel - GetBaseModelByLongId
2017-06-28 11:56:06 访问(1386) 赞(0) 踩(0)
_GetBaseModel
#region 获得BaseModel
/// <summary>
/// 获得BaseModel
/// </summary>
/// <param name="entity">操作实体</param>
/// <param name="xdbHelper">数据库链接串</param>
/// <returns></returns>
protected BaseModel _GetBaseModel(BaseEntity entity, DBHelper xdbHelper)
{
// 获得第一条记录 //
DBInvokeParameter dbInvokeParameterValue
=
BuildSQLSlowXCoreFunctions.TopListDBInvokeParameter
(
xdbHelper.GetEmDataBaseHelper(),
xdbHelper.GetDataBaseVersion(),
1,
entity
);
DataSet theResult = _ExecuteDataSet
(
SlowX.Core.Enums.ClearCache.EmClearCache.不清空,
CommandType.Text,
dbInvokeParameterValue.SQL,
dbInvokeParameterValue.parameter,
xdbHelper
);
// 销毁资源 //
dbInvokeParameterValue.parameter = null;
dbInvokeParameterValue = null;
if (theResult == null || theResult.Tables[0].Rows.Count == 0)
{
return null;
}
else
{
return CreateBaseModel(theResult.Tables[0].Rows[0], xdbHelper);
}
}
#endregion 获得BaseModel
WhereAddLongWithPK
/// <summary>
/// Where的关键字的Long值查询
/// </summary>
/// <param name="theValue">查询值</param>
public void WhereAddLongWithPK
(
long theValue
)
{
EntityFieldInfo pkInfo = GetIDEntityFieldInfo();
if (pkInfo == null)
{
throw new Exception
(
"方法:"
+ MethodBase.GetCurrentMethod().ReflectedType.FullName
+ " "
+ MethodBase.GetCurrentMethod().ToString()
+ " 发生异常:"
+ "没有获得关键字的EntityFieldInfo"
);
}
m_ListIQueryItem.Add
(
new DataColumnQueryLongItem
(
pkInfo,
theValue
)
);
}
GetBaseModelByLongId
#region 通过 Long Id 获得 BaseModel - GetBaseModelByLongId +
/// <summary>
/// 通过 Long Id 获得 BaseModel - GetBaseModelByLongId
/// </summary>
/// <param name="longId"></param>
/// <param name="xdbHelper">数据库链接串</param>
/// <returns></returns>
public BaseModel GetBaseModelByLongId
(
long longId,
DBHelper xdbHelper
)
{
BaseModel theResult = null;
bool bIsCreate = true;
if (xdbHelper == null)
{
xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
}
else
{
// 没有打开链接 //
bIsCreate = xdbHelper.IsNotOpen();
}
try
{
if (bIsCreate)
xdbHelper.OpenDBHelper();
BaseEntity entity = this.CreateBaseEntity();
IWhereDriver iwhere = entity;
iwhere.WhereAddLongWithPK(longId);
theResult = _GetBaseModel(entity, xdbHelper);
if (bIsCreate)
xdbHelper.EndDBHelper();
}
catch (Exception err)
{
if (bIsCreate)
xdbHelper.TranDBHelper();
throw err;
}
finally
{
if (bIsCreate)
xdbHelper.FinallyDBHelper();
}
return theResult;
}
/// <summary>
/// 通过 Long Id 获得 BaseModel
/// </summary>
/// <param name="longId"></param>
/// <param name="emWhereModelValue"></param>
/// <param name="xdbHelper">数据库链接串</param>
/// <returns></returns>
public BaseModel GetBaseModelByLongId
(
long longId,
Enums.WhereModel.EmWhereModel emWhereModelValue,
DBHelper xdbHelper
)
{
BaseModel theResult = null;
bool bIsCreate = true;
if (xdbHelper == null)
{
xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
}
else
{
// 没有打开链接 //
bIsCreate = xdbHelper.IsNotOpen();
}
try
{
if (bIsCreate)
xdbHelper.OpenDBHelper();
BaseEntity entity = this.CreateBaseEntity();
IQueryDriver iq = entity;
// 初始化where的过滤条件 //
iq.InitIQueryItem(emWhereModelValue);
iq.WhereAddLongWithPK(longId);
theResult = _GetBaseModel(entity, xdbHelper);
if (bIsCreate)
xdbHelper.EndDBHelper();
}
catch (Exception err)
{
if (bIsCreate)
xdbHelper.TranDBHelper();
throw err;
}
finally
{
if (bIsCreate)
xdbHelper.FinallyDBHelper();
}
return theResult;
}
#endregion 通过 Long Id 获得 BaseModel
上一条:
下一条:
相关评论
发表评论