Accept schema qualified names in SchemaReaderOptions.Tables - #71
Open
DavidBoone wants to merge 1 commit into
Open
Accept schema qualified names in SchemaReaderOptions.Tables#71DavidBoone wants to merge 1 commit into
DavidBoone wants to merge 1 commit into
Conversation
Table filters matched on the unqualified name alone, so "Orders" pulled in every schema's Orders and there was no way to ask for just one of them. Entries may now be written as "sales.orders", which pins the table to that schema, while bare names keep matching in any schema. That is the convention EF Core scaffolding uses for DatabaseModelFactoryOptions.Tables, so filters written for it carry over unchanged. Entries are read with SchemaQualifiedName.Parse, so the first dot separates schema from name here as it does everywhere else. Names reach the database as written and are compared with its own identifier rules; only the in-memory SQLite path folds case, matching how SQLite looks objects up. The four SQL providers share the condition builder and supply their own set membership syntax, which differs in escaping and, on Oracle, in case handling.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
One more, I think last, change to SchemaSaurus to get it working with the latest EntityFrameworkCore.Generator on my project. Thank-you!
Table filters matched on the unqualified name alone, so "Orders" pulled in every schema's Orders and there was no way to ask for just one of them. Entries may now be written as "sales.orders", which pins the table to that schema, while bare names keep matching in any schema. That is the convention EF Core scaffolding uses for DatabaseModelFactoryOptions.Tables, so filters written for it carry over unchanged.
Entries are read with SchemaQualifiedName.Parse, so the first dot separates schema from name here as it does everywhere else. Names reach the database as written and are compared with its own identifier rules; only the in-memory SQLite path folds case, matching how SQLite looks objects up.
The four SQL providers share the condition builder and supply their own set membership syntax, which differs in escaping and, on Oracle, in case handling.