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.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Current dotnet/extensions API Surface #4373
Current dotnet/extensions API Surface #4373
Changes from all commits
1f74cc7
2f13fde
3ec3666
9e74701
df25e27
de45a07
7a0bd2c
70213e6
7827490
8ded263
ed7a5f9
d495e73
59667db
17c9fb7
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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's nothing in this public API that enables a
HeaderKey<T>
to be constructed / populated (e.g. control what Name returns) from outside of this library, yet there's an interface that returns one of these. Does that mean that interface is also not intended for external implementation?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.
App code gets an IHeaderRegistry from DI and then calls the Register function, getting back a HeaderKey instance. The HeaderKey is then used to query the value of the header for the life of the application.
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. My question was more that there's no way for someone outside of this library to construct one of these and populate the Name, which means the only code that can implement an IHeaderRegistry to give back a meaningful HeaderKey is ours. Is that intended?
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.
These extensions should be in the same namespace as their extended types, IWebHostBuilder and IHost (even if it means splitting the class). I'll take care of that.