intuit / intuit/QuickBooks-V3-DotNET-SDK

Adopt Microsoft.Extensions.*

Open
#286 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
121
Forks
145
Avg merge
17h 1m
Merged PRs (30d)
1

Description

Pullling out of #221 for discussion:

- [`Microsoft.Extensions.Logging`](https://www.nuget.org/packages/Microsoft.Extensions.Logging/2.1.1) should replace `Intuit.Ipp.Diagnostics.ILogger`
- Logging is easier to consume with careful categorization (eliminating the need for "Advanced Logging"), which is not possible with the existing interfaces.
- [`JsonFileConfigurationProvider`](https://github.com/intuit/QuickBooks-V3-DotNET-SDK/blob/460dfd311790cb2171880680bb83b366453b36e8/IPPDotNetDevKitCSV3/Code/Intuit.Ipp.Core/Configuration/JsonFileConfigurationProvider.cs) uses [`Microsoft.Extensions.Configuration`](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/2.1.1), but doesn't take advantage of its strongly-typed patterns.
- It also hard-codes how the `IConfigurationRoot` gets built; many apps (especially all ASP.NET Core) will have existing config
- A `ServiceProvider` with [`Microsoft.Extensions.DependencyInjection`](https://www.nuget.org/packages/Microsoft.Extensions.DependencyInjection/2.1.1) could have access to everything you need to access current configuration, resolve an `ILoggerProvider`, etc

All things being equal, I would probably target version 2.1.x for these dependencies due to [support on .NET Framework](https://dotnet.microsoft.com/en-us/platform/support/policy/aspnetcore-2.1).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.