dotNETLemmy.API
0.0.6-alpha.0.1
This is a prerelease version of dotNETLemmy.API.
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package dotNETLemmy.API --version 0.0.6-alpha.0.1
NuGet\Install-Package dotNETLemmy.API -Version 0.0.6-alpha.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="dotNETLemmy.API" Version="0.0.6-alpha.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add dotNETLemmy.API --version 0.0.6-alpha.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: dotNETLemmy.API, 0.0.6-alpha.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install dotNETLemmy.API as a Cake Addin #addin nuget:?package=dotNETLemmy.API&version=0.0.6-alpha.0.1&prerelease // Install dotNETLemmy.API as a Cake Tool #tool nuget:?package=dotNETLemmy.API&version=0.0.6-alpha.0.1&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
<div class="article">
Lemmy .NET API
An implementation of the Lemmy HTTP API modeled after lemmy-js-client.
Usage
The LemmyHttpClient class has a constructor which takes an HttpClient as a parameter, allowing for it to be used as a typed IHttpClientFactory client with dependency injection.
Program.cs:
HostApplicationBuilder builder = Host.CreateApplicationBuilder(args);
builder.Services.AddHostedService<LemmyWorker>(provider =>
new LemmyWorker(provider.GetRequiredService<ILemmyHttpClient>())
{
BaseAddress = "https://enterprise.lemmy.ml/"
});
builder.Services.AddHttpClient<ILemmyHttpClient, LemmyHttpClient>();
IHost host = builder.Build();
host.Run();
LemmyWorker.cs:
// Logs getPostResponse every 10 seconds
public class LemmyWorker : BackgroundService
{
public string BaseAddress
{
get => _lemmyHttpClient.BaseAddress;
set => _lemmyHttpClient.BaseAddress = value;
}
private readonly ILemmyHttpClient _lemmyHttpClient;
public LemmyWorker(ILemmyHttpClient lemmyHttpClient) =>
_lemmyHttpClient = lemmyHttpClient;
protected override async Task ExecuteAsync(CancellationToken cancellationToken)
{
while(!cancellationToken.IsCancellationRequested)
{
GetPostsResponse getPostsResponse = await _lemmyHttpClient.GetPosts(new GetPostsForm(), cancellationToken);
Console.WriteLine(getPostsResponse);
await Task.Delay(10000, cancellationToken);
}
}
}
</div>
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net7.0
- No dependencies.
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.0.6 | 201 | 6/24/2023 |
0.0.6-alpha.0.1 | 76 | 6/24/2023 |
0.0.5 | 176 | 6/24/2023 |
0.0.3-alpha.0 | 77 | 6/23/2023 |
0.0.2 | 180 | 6/21/2023 |
0.0.1 | 190 | 6/21/2023 |
Initial Release