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 ...)? 我看不懂这个
解决方案 »
- winFormMDI一个子窗体打开如何不影响另外一个窗体控件的位置改变?
- 急求填空。。。。我已经做晕了
- 中文字符转换EBCDIC码的问题
- 怎样不通过WebBrowser而实例化一个HtmlDocument
- 我使用XML作web留言板,如何可以创建一个XML文件,并向其中追加留言数据?
- 请教LogonUser API的调用,高手进来,在线等待
- 问一个DataGirdView很基础的问题,谢谢了
- 怎样在 OnInit 过程中得到是那个控件触发的事件
- 关于将字符串转化为数组的问题?(很急的问题,但是没有分了)
- 放分--简单问题
- 在PC怎麼獲得通過串口服務器後的接受到的串口信息呢?
- 为什么这DataGrid绑定后数据不显示呢?
看的头都晕了