Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds EF Core 11.0 preview 1 documentation, focused on new Cosmos DB provider capabilities and support for complex types/JSON with TPT/TPC inheritance, and wires the new Cosmos “Saving data” page into the table of contents.
Changes:
- Document support for complex types and JSON columns on TPT/TPC inheritance hierarchies in EF Core 11.0.
- Add a new Cosmos provider “Saving data” page covering bulk execution and session token management, including configuration and usage patterns.
- Update the EF Core 11.0 “What’s New” page and the TOC to reference the new Cosmos saving documentation and features.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
entity-framework/toc.yml |
Adds a “Saving data” entry under the Cosmos provider section to expose the new saving documentation. |
entity-framework/core/what-is-new/ef-core-11.0/whatsnew.md |
Extends the EF11 preview notes with complex type + JSON on TPT/TPC, Cosmos bulk execution, session token management, and the new dotnet ef database update --add behavior. |
entity-framework/core/providers/cosmos/saving.md |
Introduces a dedicated Cosmos saving guide, including bulk execution configuration and detailed session token management modes and examples. |
JoasE
left a comment
There was a problem hiding this comment.
Looks good! I don't know exactly what you policy is on what EF docs should mention about underlying technologies. But I have to admit that personally I don't feel the downsides are emphasized enough in the cosmos db sdk documentation, but I guess it's not really up to the EF documentation to fix that. The link to the caveats is definitely nice, but the fact that it can't be combined (and will throw) with session consistency and other functionalities like triggers isn't really mentioned I think. We also have a default warning for batching combined with bulk execution. Its possible to combine, but any batches will skip bulk execution, hence the default warning
| => optionsBuilder.UseCosmos( | ||
| "<connection string>", | ||
| databaseName: "OrdersDB", | ||
| options => options.SessionTokenManagementMode(SessionTokenManagementMode.SemiAutomatic)); |
There was a problem hiding this comment.
@AndriySvyryd should this be WithSessionTokenManagementMode (also the other new options maybe)?
There was a problem hiding this comment.
It's too late, none of the Cosmos option methods start with a verb
JoasE
left a comment
There was a problem hiding this comment.
Nice! I can be a bit obsessed about nuance, so I have a couple of comments. But feel free to ignore them if you think they are too nit-picky
Co-authored-by: JoasE <32096708+JoasE@users.noreply.github.com>
|
Thanks @JoasE, applied your suggestions. |
Co-authored-by: Andriy Svyryd <AndriySvyryd@users.noreply.github.com>
Document complex type support for TPC/TPT See dotnet/efcore#28443 Document Cosmos bulk execution See dotnet/efcore#36599 Document Cosmos session token management See dotnet/efcore#36504 Document migration create-and-apply without recompilation See dotnet/efcore#37342 Document Cosmos transactional batches See dotnet/efcore#17308 Co-authored-by: JoasE <32096708+JoasE@users.noreply.github.com>
Adds documentation for EF 11 preview.1 (note that this targets the preview-1 branch, so will not go live when merged).
This is notably missing documentation for dotnet/efcore#17308, as we have #5100 pending.
@JoasE can you please take a look as this covers two significant features you're contributed? A review from you would be much appreciated!