我目前在LLBLGen中有两个实体,并希望将它们合并在一起输出到一个表,以便在DevExpress GridControl中使用,就像2个表与内连接一起连接一样。
有没有人知道如何用LLBLGen做到这一点?
答案 0 :(得分:3)
如果您使用的是LLBLGen 2.6,则可以使用LINQ使用LLBLGen LINQ Provider来平滑输出。
正在路上的东西(伪代码)
var flat = from x in db.entitiesa()
from y in db.entitiesb()
select new { x.Name, y.Address }
并将变量'flat'抛出到网格控件。
答案 1 :(得分:2)
然后另一种方法是创建一个动态列表(下面的代码来自帮助文件) - 遗憾的是它非常详细。
DataAccessAdapter adapter = new DataAccessAdapter();
ResultsetFields fields = new ResultsetFields(3);
fields.DefineField(EmployeeFields.FirstName, 0, "FirstNameManager", "Manager");
fields.DefineField(EmployeeFields.LastName, 1, "LastNameManager", "Manager");
fields.DefineField(EmployeeFields.LastName, 2, "AmountEmployees", "Employee", AggregateFunction.Count);
IRelationPredicateBucket bucket = new RelationPredicateBucket();
bucket.Relations.Add(EmployeeEntity.Relations.EmployeeEntityUsingEmployeeId, "Employee", "Manager", JoinHint.None);
IGroupByCollection groupByClause = new GroupByCollection();
groupByClause.Add(fields[0]);
groupByClause.Add(fields[1]);
DataTable dynamicList = new DataTable();
adapter.FetchTypedList(fields, dynamicList, bucket, 0, null, true, groupByClause);