WebTrendsSDK 0.1.0
dotnet add package WebTrendsSDK --version 0.1.0
NuGet\Install-Package WebTrendsSDK -Version 0.1.0
<PackageReference Include="WebTrendsSDK" Version="0.1.0" />
paket add WebTrendsSDK --version 0.1.0
#r "nuget: WebTrendsSDK, 0.1.0"
// Install WebTrendsSDK as a Cake Addin #addin nuget:?package=WebTrendsSDK&version=0.1.0 // Install WebTrendsSDK as a Cake Tool #tool nuget:?package=WebTrendsSDK&version=0.1.0
WebTrendsSDK
A .NET SDK built for the WebTrends OTS API
Installation
The SDK is available as a NuGet package. You can install it using the following command:
dotnet add package WebTrendsSDK
Usage
.NET Core & .NET 5+
You can easily add the WebTrendsSDK to your project by referencing the NuGet package and adding the following configuration and service registration:
{
"WebTrends": {
"AccountId": "<account-id>",
"KeyToken": "<key-token>"
}
}
services.AddWebTrends();
This will register a default per-request IWebTrendsApiClient
instance in the service collection. You can then inject this into your services and use it to interact with the WebTrends API.
.NET Framework
For use on .NET Framework would largely depend on your dependency injection strategy (if you use one).
You can easily create an instance of the WebTrendsApiClient
class and use it to interact with the WebTrends API.
var http = new HttpClient();
var client = new WebTrendsApiClient(http, new WebTrendsSettings());
Or, alternatively through the API client factory:
var clientFactory = new WebTrendsApiClientFactory(new WebTrendsHttpClientFactory());
var client = clientFactory.CreateClient(new WebTrendsSettings());
NOTE - On .NET Framework, it is recommended to use a single instance of HttpClient
for the lifetime of your application. This is because the HttpClient
class is designed to be reused and not disposed of after each request.
A IWebTrendsHttpClientFactory
can be implemented to manage the lifecycle of the HttpClient
instance.
Debugging
To aid in debugging results from the WebTrends API, you can enable the following settings:
{
"WebTrends": {
"CaptureRequestContent": true,
"CaptureResponseContent": true
}
}
These settings, when enabled will capture the request and response content for each API call, and the content of these will be available to the WebTrendsResponse
as RequestContent
and ResponseContent
properties. The SDK will automatically map these results, but for unexpected results, it is useful to understand what has been sent/received.
Open Source
This SDK is open source and is available under the MIT license. Feel free to contribute to the project by submitting pull requests or issues.
Component | Authors | Website | License |
---|---|---|---|
.NET Platform | Microsoft and contributors | GitHub | MIT |
Ben.Demystifier | Ben Adams | GitHub | Apache V2 |
FluentValidation | Jeremy Skinner and contributors | GitHub | Apache V2 |
Docusaurus | Meta Platforms, Inc and contributors | GitHub | MIT |
MinVer | Adam Ralph and contributors | GitHub | Apache V2 |
By using this SDK, you agree to the terms of the MIT license used by this project, as well as the terms of the licenses of the components used by this SDK.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Ben.Demystifier (>= 0.4.1)
- FluentValidation (>= 11.6.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 8.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
- Microsoft.Extensions.Options (>= 8.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
- MinVer (>= 4.3.0)
- System.Net.Http.Json (>= 8.0.0)
- System.Text.Json (>= 8.0.0)
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 |
---|---|---|
0.1.0 | 407 | 5/10/2024 |
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## 0.1.0
### Added
- Support for WebTrends OTS API