BadEcho.Extensions
1.1.2-beta.34
See the version list below for details.
dotnet add package BadEcho.Extensions --version 1.1.2-beta.34
NuGet\Install-Package BadEcho.Extensions -Version 1.1.2-beta.34
<PackageReference Include="BadEcho.Extensions" Version="1.1.2-beta.34" />
<PackageVersion Include="BadEcho.Extensions" Version="1.1.2-beta.34" />
<PackageReference Include="BadEcho.Extensions" />
paket add BadEcho.Extensions --version 1.1.2-beta.34
#r "nuget: BadEcho.Extensions, 1.1.2-beta.34"
#:package BadEcho.Extensions@1.1.2-beta.34
#addin nuget:?package=BadEcho.Extensions&version=1.1.2-beta.34&prerelease
#tool nuget:?package=BadEcho.Extensions&version=1.1.2-beta.34&prerelease
Bad Echo Framework Extensions
The BadEcho.Extensions library integrates the Bad Echo core frameworks with the Microsoft.Extensions.* family of libraries and the dependency injection container they use.
Using this library allows for various services and features registered with an application host to be interoperable with various Bad Echo features. It also provides some enhancements to existing services exposed by the various Microsoft.Extensions.* libraries.
This package exists to be used by specific Bad Echo applications, but is licensed under the GNU Affero General Public License so that others may enjoy it as well; see the accompanying license for details.
Logging
Support is provided for capturing Bad Echo library events with loggers configured using the Microsoft.Extensions.Logging framework. Bad Echo class libraries log diagnostic events the same way the .NET runtime does: by writing to an EventSource.
Dependency injection (a requirement for Microsoft.Extension.Logging) is an application concern, not a library concern. Trying to inject an ILogger instance into all the places a class library wishes to emit messages (a common bit of misadvice found on various Developer Q&A platforms) is to descend into madness.
This library provides extension methods which will forward log messages from Bad Echo event sources to ILogger instances created from a provided ILoggerFactory, an approach used by Microsoft for several of their products. This keeps the library sane while giving the application control over where these messages go.
Options
This library adds enhancements to options provided by Microsoft.Extensions.Options, including a mechanism that allows for changes to options to be persisted. They are configured much like normal IOption types, except a file name is also provided to Configure, so that it knows where to persist its changes (normally, options are ignorant of their file source, as they're just projections of a provided IConfiguration instance).
About Bad Echo
Bad Echo is a collection of software technologies and various writings by Matt Weber: a software designer, partnered Twitch streamer, and game developer.
While Bad Echo code concerns itself a great deal with the "best approaches" to general software problems, it also focuses on game development and providing entertainment through the clever manipulation of games (the results of which are streamed by myself).
Getting in Contact
I'm a partnered Twitch streamer, and talking to me during one of my Omnified streams, on the off chance that I actually am streaming, is most definitely the quickest way to get my attention!
You may also reach me via email.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- BadEcho.Common (>= 1.1.2-beta.34)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.7)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.7)
- Microsoft.Extensions.Options (>= 9.0.7)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.7)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.0-alpha.6 | 43 | 2/28/2026 |
| 1.2.0-alpha.4 | 38 | 2/25/2026 |
| 1.2.0-alpha.3 | 45 | 2/18/2026 |
| 1.2.0-alpha.2 | 42 | 2/17/2026 |
| 1.1.2 | 101 | 2/7/2026 |
| 1.1.2-beta.81 | 52 | 2/7/2026 |
| 1.1.2-beta.37 | 258 | 11/12/2025 |
| 1.1.2-beta.34 | 138 | 11/7/2025 |
| 1.1.2-beta.33 | 136 | 10/21/2025 |
| 1.1.2-beta.32 | 138 | 10/21/2025 |
| 1.1.2-beta.30 | 140 | 10/21/2025 |
| 1.1.2-beta.28 | 148 | 10/21/2025 |
| 1.1.2-beta.27 | 142 | 10/21/2025 |
| 1.1.2-beta.26 | 144 | 10/21/2025 |
| 1.1.2-beta.25 | 141 | 10/21/2025 |
| 1.1.2-beta.20 | 97 | 9/27/2025 |