-
Notifications
You must be signed in to change notification settings - Fork 2k
What's new in RC1 #2635
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
What's new in RC1 #2635
Conversation
@dotnet/efteam This is not complete yet, but putting up what I have done so far to start getting some reviews. Note:
|
|
||
* Translation of `is` on Cosmos--see [#16391](https://github.com/dotnet/efcore/issues/16391) | ||
* User mapped functions can now be annotated to control null propagation--see [#19609](https://github.com/dotnet/efcore/issues/19609) | ||
* Support for translation of GroupBy with conditional aggregates--see [#11711](https://github.com/dotnet/efcore/issues/11711) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we put example of this too? Not a huge feature as such but could help in educating users what more types of pattern we support now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure! 😁
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could include single query applying multiple aggregates
- Count with predicate
- Where + Min/Max
- Distinct + Sum/Avg
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@smitpatel I thought you were volunteering to write the examples... :-D
} | ||
``` | ||
|
||
When Migrations (or `EnsureCreated`) are used to create the database, EF Core will automatically create the join table. For example, on SQL Server for this model, EF Core generates: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When Migrations (or `EnsureCreated`) are used to create the database, EF Core will automatically create the join table. For example, on SQL Server for this model, EF Core generates: | |
When migrations (or `EnsureCreated`) are used to create the database, EF Core will automatically create the join table. For example, on SQL Server for this model, EF Core generates: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We capitalize Migrations when it refers to the EF feature, as opposed to an actual migration.
* The interceptor has both sync and async methods. This can be useful if you need to perform async I/O, such as writing to an audit server. | ||
* The interceptor allows SaveChanges to be skipped using the `InterceptionResult` mechanism common to all interceptors. | ||
|
||
The downside of interceptors is that they must be registered on the DbContext when it is being constructed. For example: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wouldn't exactly call this a downside ;)
The downside of interceptors is that they must be registered on the DbContext when it is being constructed. For example: | |
Note that interceptors must be registered on the DbContext when it is being constructed. For example: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #22359
* Translation of `is` on Cosmos--see [#16391](https://github.com/dotnet/efcore/issues/16391) | ||
* User mapped functions can now be annotated to control null propagation--see [#19609](https://github.com/dotnet/efcore/issues/19609) | ||
* Support for translation of GroupBy with conditional aggregates--see [#11711](https://github.com/dotnet/efcore/issues/11711) | ||
* Translation of Distinct operator over group element before aggregate--see [#17376](https://github.com/dotnet/efcore/issues/17376) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Translation of Distinct operator over group element before aggregate--see [#17376](https://github.com/dotnet/efcore/issues/17376) | |
* Translation of Distinct over group elements before aggregate--see [#17376](https://github.com/dotnet/efcore/issues/17376) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But Distinct is applied over the group element 'g'.
There are inner elements in the group element.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Leaving as is for now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, just that English-wise I don't think it works as-is, but not very important.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is nothing wrong English-wise here. You can apply Distinct over any enumerable stream.
@dotnet/efteam I have addressed comments and adding the required dependents section. |
Co-authored-by: Brice Lambson <brice@bricelam.net>
No description provided.