Options pattern in a shared class library
Hello all, I am looking to use options pattern in a shared class library, but I am not sure how should I go about it. The project structure is something like this:
What I need is to somewhat use options pattern in, say,
Class_library_2
(or at least have access to the configuration provider in any way), but I am unsure what would be the proper way to do this.
If I register the config in the Startup.cs
of the Api_1
web project, those won't be available from Api_2
.
Should I create the option classes and register the config in both projects?
Any hints or advice? Thanks a lot!10 Replies
normally, you'd make an
IServiceCollection
extension method inside the package that needs the configuration (ie Class_lib_1)
something like AddClassLib1();
if you want to access the IConfiguration, thats fine and can be done in a few ways, including passing it into that methodSo I need to register the config in both projects, right? Where do I define the option classes?
Something like this? https://learn.microsoft.com/en-us/dotnet/core/extensions/options-library-authors#iconfiguration-parameter
yep, exactly like that
Thank you. I will attempt to follow that example, still learning 😅
One more question, that still is not clear to me: where should I define the option classes?
Unknown User•8mo ago
Message Not Public
Sign In & Join Server To View
you would define the option class in your library
that way any other project that uses it has access to it
Unknown User•8mo ago
Message Not Public
Sign In & Join Server To View
Thank you both, truly appreciate it!\
Unknown User•8mo ago
Message Not Public
Sign In & Join Server To View
Thank you. I am looking at the code right now.