mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-03-07 06:30:57 +08:00
update
20
LinqToSql.md
20
LinqToSql.md
@@ -1,26 +1,26 @@
|
||||
不支持 IQueryable 主要出于使用习惯的优化考虑,因为当编写代码时,智能提示会出现一堆你不想使用的方法,如下图:
|
||||
原本不支持 IQueryable 主要出于使用习惯的优化考虑,如果继承 IQueryable,编写代码的智能总会提示出现一堆你不想使用的方法,如下图:
|
||||
|
||||

|
||||
|
||||
FreeSql 没想过支持 linq to sql 语法,原以为必须实现 IQueryable 才可以实现,结果一次惊喜,原来 ISelect 也行。
|
||||
原以为必须实现 IQueryable 才可以实现,结果一次惊喜,原来只要有对应的方法就成。
|
||||
|
||||
linq to sql 不需要实现 IQueryable,只要有对应的方法就成。
|
||||
|
||||
> 虽然支持了,但是还请使用 链式 + lambda 吧!!!
|
||||
> 虽然支持了,但是还是推荐使用【链式 + lambda】 !!!
|
||||
|
||||
## 特别说明
|
||||
|
||||
这次功能更新,为 ISelect 增加了 5个方法,对【链式 + lambda】的用户可能会造成少许影响,我在注释上标明了,如下图:
|
||||
这次功能更新,ISelect 增加了 5个方法,对【链式 + lambda】的用户可能会造成少许影响,我在注释上标明了,如下图:
|
||||
|
||||

|
||||
|
||||
特别是 .Select() 方法,原先是没有支持了,这个功能放在了 ToList(a => new Dto{}) 合并来使用的。现在也可以使用 .Select(),需要避免一下坑:
|
||||
特别是 .Select(),原先没有支持,该功能与 ToList(a => new Dto{}) 合并实现的。
|
||||
|
||||
* 请务必在 .ToList() 之前使用 .Select();
|
||||
需要避免一下坑:
|
||||
|
||||
* 请减少以上方法在【链式 + labmda】的模式下调用;
|
||||
* 如果一定要使用 .Select() 方法,请务必在 .ToList() 之前调用它;
|
||||
|
||||
> 所有 ISelect 都可以使用类似以下的方法,包括 Repository、DbContext;
|
||||
* 请减少图中方法在【链式 + labmda】模式下的使用;
|
||||
|
||||
> 所有 ISelect 都可以使用 linq to sql,包括 Repository、DbContext;
|
||||
|
||||
## Where
|
||||
```csharp
|
||||
|
||||
Reference in New Issue
Block a user