mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-19 04:18:16 +08:00
- 修复 ISelect.ToList(true) 无效的 bug;
- 增加 IAop.ConfigEntity 配置实体特性,可实现使用其他 ORM 的实体特性,#36;
This commit is contained in:
@ -9,5 +9,7 @@ namespace FreeSql.Internal.CommonProvider {
|
||||
public EventHandler<AopToListEventArgs> ToList { get; set; }
|
||||
public EventHandler<AopWhereEventArgs> Where { get; set; }
|
||||
public EventHandler<AopParseExpressionEventArgs> ParseExpression { get; set; }
|
||||
public EventHandler<AopConfigEntityEventArgs> ConfigEntity { get; set; }
|
||||
public EventHandler<AopConfigEntityPropertyEventArgs> ConfigEntityProperty { get; set; }
|
||||
}
|
||||
}
|
||||
|
@ -288,8 +288,10 @@ namespace FreeSql.Internal.CommonProvider {
|
||||
return ret;
|
||||
});
|
||||
}
|
||||
public List<T1> ToList(bool includeNestedMembers = false) => this.ToListPrivate(includeNestedMembers == false ? this.GetAllFieldExpressionTreeLevel2() : this.GetAllFieldExpressionTreeLevel2());
|
||||
public Task<List<T1>> ToListAsync(bool includeNestedMembers = false) => this.ToListPrivateAsync(includeNestedMembers == false ? this.GetAllFieldExpressionTreeLevel2() : this.GetAllFieldExpressionTreeLevel2());
|
||||
public List<T1> ToList(bool includeNestedMembers = false) =>
|
||||
this.ToListPrivate(includeNestedMembers == false ? this.GetAllFieldExpressionTreeLevel2() : this.GetAllFieldExpressionTreeLevelAll());
|
||||
public Task<List<T1>> ToListAsync(bool includeNestedMembers = false) =>
|
||||
this.ToListPrivateAsync(includeNestedMembers == false ? this.GetAllFieldExpressionTreeLevel2() : this.GetAllFieldExpressionTreeLevelAll());
|
||||
public T1 ToOne() {
|
||||
this.Limit(1);
|
||||
return this.ToList().FirstOrDefault();
|
||||
@ -350,7 +352,7 @@ namespace FreeSql.Internal.CommonProvider {
|
||||
public Func<IFreeSql, DbDataReader, T1> Read { get; set; }
|
||||
}
|
||||
protected GetAllFieldExpressionTreeInfo GetAllFieldExpressionTreeLevelAll() {
|
||||
return _dicGetAllFieldExpressionTree.GetOrAdd(string.Join("+", _tables.Select(a => $"{_orm.Ado.DataType}-{a.Table.DbName}-{a.Alias}-{a.Type}")), s => {
|
||||
return _dicGetAllFieldExpressionTree.GetOrAdd($"*{string.Join("+", _tables.Select(a => $"{_orm.Ado.DataType}-{a.Table.DbName}-{a.Alias}-{a.Type}"))}", s => {
|
||||
var type = _tables.First().Table.TypeLazy ?? _tables.First().Table.Type;
|
||||
var ormExp = Expression.Parameter(typeof(IFreeSql), "orm");
|
||||
var rowExp = Expression.Parameter(typeof(DbDataReader), "row");
|
||||
|
Reference in New Issue
Block a user