using DataAgent.DataAccessor;
using DataAgent.Provider;
using System;
using System.Collections.Generic;
using System.Data;
using x8967e63e89e18c40;
using xaa33c3b341f02f34;namespace DataAgent.DataOperator
{
public class RelationOperator<EntityType> : x538c7e7792088e78 where EntityType : new()
{
protected xf3c4f579038c366c x01f46f6042b6d18a;
protected SortedList<int, RelationResource> x38d84b43cf7a0e1f;
protected string xd0dc75a1e9116240; public RelationOperator(BaseDataAccessor pBaseDataAccessor_In); public string RelationSql { get; } public int ClearRelation();
public int DoCommand(string strCommand);
public int DoQuery(string strSql, out DataSet pDataSet_Out);
public int ExcuteRegularQuery(string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out);
public int ExcuteRegularQuery(string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out, out Dictionary<Type, List<string>> dicTableAlias_Out);
public int ExcuteRegularQuery(string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out, params IRelationColumnSortPair[] pIRelationColumnSortPairs_In);
public int ExcuteRegularQuery(RelationPageParameter pRelationPageParameter, string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out, params IRelationColumnSortPair[] pIRelationColumnSortPairs_In);
public int ExcuteRegularQuery(string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out, out Dictionary<Type, List<string>> dicTableAlias_Out, params IRelationColumnSortPair[] pIRelationColumnSortPairs_In);
public int ExcuteRegularQuery(RelationPageParameter pRelationPageParameter, string[] staArr_SelectColumns, IList<Filter> pList_Condition_In, IDictionary<string, object> dicExtendParam_In, out DataSet pDataSet_Out, out Dictionary<Type, List<string>> dicTableAlias_Out, params IRelationColumnSortPair[] pIRelationColumnSortPairs_In);
public RelationOperator<EntityType> JoinTo<LeftEntityType, RightEntityType>(JoinType pJoinType, string strLeftColumn, string strRightColumn);
public RelationOperator<EntityType> JoinTo<LeftEntityType, RightEntityType>(JoinType pJoinType, string strLeftColumn, string strRightColumn, int LeftDuplicationIndex_In);
}
}IList<Filter> filter;
int hResult;
DataSet ds = null;
//(1)创建事务对象
TransactionScope ts = new CConfigManage().TransactionScope; ; string[] columns = {BE.HIS_USERS._SYS_USER_ID,
BE.HIS_USERS._SYS_USER_NAME,
BE.HIS_USERS._HIS_USER_ID,
BE.HIS_USERS._USER_NAME,BE.HIS_USERS._USER_STATUS,
BE.HIS_ROLES._ROLE_NAME
};
RelationOperator<JZTMedicalPurchasing.BE.HIS_USERS> relationOperator = new RelationOperator<JZTMedicalPurchasing.BE.HIS_USERS>(ts.DataAccessor);
relationOperator.JoinTo<BE.HIS_USERS, BE.HIS_ROLES>(JoinType.LEFT_OUTER_JOIN, BE.HIS_USERS._HIS_ROLE_ID, BE.HIS_ROLES._HIS_ROLE_ID)
.JoinTo<BE.HIS_ROLES, BE.HIS_ROLE_PRIVILEGE>(JoinType.LEFT_OUTER_JOIN, BE.HIS_ROLES._HIS_ROLE_ID, BE.HIS_ROLE_PRIVILEGE._HIS_ROLE_ID)
.JoinTo<BE.HIS_ROLE_PRIVILEGE, BE.HIS_PRIVILEGE>(JoinType.LEFT_OUTER_JOIN, BE.HIS_ROLE_PRIVILEGE._HIS_PRIVILEGE_ID, BE.HIS_PRIVILEGE._HIS_PRIVILEGE_ID);
hResult = relationOperator.ExcuteRegularQuery(columns, filter, null, out ds);
上面中relationOperator.JoinTo<BE.HIS_USERS, BE.HIS_ROLES>(JoinType.LEFT_OUTER_JOIN, BE.HIS_USERS._HIS_ROLE_ID, BE.HIS_ROLES._HIS_ROLE_ID)
.JoinTo<BE.HIS_ROLES, BE.HIS_ROLE_PRIVILEGE>(JoinType.LEFT_OUTER_JOIN, BE.HIS_ROLES._HIS_ROLE_ID, BE.HIS_ROLE_PRIVILEGE._HIS_ROLE_ID)
.JoinTo<BE.HIS_ROLE_PRIVILEGE, BE.HIS_PRIVILEGE>(JoinType.LEFT_OUTER_JOIN, BE.HIS_ROLE_PRIVILEGE._HIS_PRIVILEGE_ID, BE.HIS_PRIVILEGE._HIS_PRIVILEGE_ID);
等效的SQL语句是什么(select ...)? 我看不懂这个
解决方案 »
- SqlCommand是不是不支持ROW_NUMBER() over(partition by ... order by ...)
- 谁能提供我学C#的入门书籍
- 查询dateTimePicker1与dateTimePicker2间数据问题
- 急救 各位弟兄多多帮忙,兄弟先行谢过!
- 水晶报表:在我的机器上预览正常(发票的大小),在其他机器上预览是A4大小
- 请问如何把日期型空值插入SQL数据库?
- c#insert into
- 关于DataGrid的问题.............
- 快来帮帮忙。先谢了
- 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。第三次发帖问了.
- 在PC怎麼獲得通過串口服務器後的接受到的串口信息呢?
- 为什么这DataGrid绑定后数据不显示呢?
看的头都晕了