Darp.Utils.Configuration
1.8.0
See the version list below for details.
dotnet add package Darp.Utils.Configuration --version 1.8.0
NuGet\Install-Package Darp.Utils.Configuration -Version 1.8.0
<PackageReference Include="Darp.Utils.Configuration" Version="1.8.0" />
paket add Darp.Utils.Configuration --version 1.8.0
#r "nuget: Darp.Utils.Configuration, 1.8.0"
// Install Darp.Utils.Configuration as a Cake Addin #addin nuget:?package=Darp.Utils.Configuration&version=1.8.0 // Install Darp.Utils.Configuration as a Cake Tool #tool nuget:?package=Darp.Utils.Configuration&version=1.8.0
Darp.Utils
This repository bundles all open source c# helper modules of 'rosslight GmbH'. To extend, add a new project and test project.
Darp.Utils.Assets
A collection of simple interfaces for app assets targeting desktop apps.
Currently implemented:
AppDataAssetsService
: Read or write to theApplicationData
. The relativePath might be e.g. the app name.
Example:
ServiceProvider provider = new ServiceCollection()
.AddAppDataAssetsService("RelativePath")
.BuildServiceProvider();
IAppDataAssetsService service = provider.GetRequiredService<IAppDataAssetsService>();
await service.SerializeJsonAsync("test.json", new { Prop1 = "value" });
Darp.Utils.Configuration
A writable configuration service. Can be registered using DI and injected into target services. Usage might include reading, writing and listening to changes via the INotifyPropertyChanged interface.
Example:
ServiceProvider provider = new ServiceCollection()
.AddAppDataAssetsService("RelativePath")
.AddConfigurationFile<TestConfig, IAppDataAssetsService>("config.json")
.BuildServiceProvider();
IConfigurationService<TestConfig> service = provider.GetRequiredService<IConfigurationService<TestConfig>>();
TestConfig config = await service.LoadConfigurationAsync();
await service.WriteConfigurationAsync(config with { Setting = "NewValue" });
Darp.Utils.Dialog
A lightweight dialog service which allows for opening dialogs from the ViewModel.
Implementation | Description |
---|---|
Implementation based on FluentAvalonia |
Example:
ServiceProvider provider = new ServiceCollection()
.AddSingleton<IDialogService, AvaloniaDialogService>()
.BuildServiceProvider();
IDialogService dialogService = provider.GetRequiredService<IDialogService>();
await _dialogService.CreateMessageBoxDialog("Title", "Message").ShowAsync();
// Assumes you have registered a view for 'SomeViewModel' in a ViewLocator
// Works with any kind of content
var viewModel = new SomeViewModel();
await _dialogService.CreateContentDialog("Title", viewModel)
.SetDefaultButton(ContentDialogButton.Primary)
.SetCloseButton("Close")
.SetPrimaryButton("Ok", onClick: model => model.IsModelValid)
.ShowAsync();
Darp.Utils.ResxSourceGenerator
A source generator for generating strongly typed singleton resource classes from .resx files. Based on the Microsoft.CodeAnalysis.ResxSourceGenerator.
Usage
YourProject.csproj
<Project>
<PropertyGroup>
<SkipShowResxFilesInHierarchy>false</SkipShowResxFilesInHierarchy>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Darp.Utils.ResxSourceGenerator" Version="X.Y.Z" PrivateAssets="all"/>
</ItemGroup>
<ItemGroup>
<AdditionalFiles Include="Localization\Resources1.resx"/>
<AdditionalFiles Include="Localization\Resources2.resx"
GenerateSource="true"
RelativeDir=""
ClassName=""
EmitFormatMethods="false"
EmitObserveMethods="false"
Public="false"/>
</ItemGroup>
</Project>
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- Darp.Utils.Assets (>= 1.8.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1)
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.12.3 | 77 | 12/17/2024 |
1.12.2 | 108 | 12/12/2024 |
1.12.1 | 74 | 12/11/2024 |
1.12.0 | 66 | 12/11/2024 |
1.11.4 | 76 | 12/10/2024 |
1.11.3 | 78 | 12/10/2024 |
1.11.2 | 69 | 12/10/2024 |
1.11.1 | 81 | 12/9/2024 |
1.11.0 | 79 | 12/9/2024 |
1.10.0 | 160 | 10/21/2024 |
1.9.2 | 150 | 10/19/2024 |
1.9.1 | 137 | 10/19/2024 |
1.9.0 | 110 | 9/30/2024 |
1.8.0 | 102 | 9/26/2024 |
1.7.4 | 99 | 9/23/2024 |
1.7.3 | 97 | 9/22/2024 |
1.7.2 | 91 | 9/22/2024 |
1.7.1 | 95 | 9/22/2024 |
1.7.0 | 90 | 9/22/2024 |
1.6.3 | 223 | 9/10/2024 |
1.6.2 | 126 | 9/9/2024 |
1.6.1 | 122 | 9/9/2024 |
1.6.0 | 123 | 9/9/2024 |
1.5.1 | 121 | 9/7/2024 |
1.5.0 | 121 | 9/5/2024 |
1.4.0 | 164 | 8/11/2024 |
1.3.0 | 122 | 8/9/2024 |
1.2.1 | 120 | 8/9/2024 |
1.2.0 | 118 | 8/9/2024 |
1.1.0 | 117 | 8/8/2024 |
1.0.1 | 122 | 8/8/2024 |
1.0.0 | 126 | 8/8/2024 |