FhirParametersGenerator 0.2.0
See the version list below for details.
dotnet add package FhirParametersGenerator --version 0.2.0
NuGet\Install-Package FhirParametersGenerator -Version 0.2.0
<PackageReference Include="FhirParametersGenerator" Version="0.2.0" />
paket add FhirParametersGenerator --version 0.2.0
#r "nuget: FhirParametersGenerator, 0.2.0"
// Install FhirParametersGenerator as a Cake Addin
#addin nuget:?package=FhirParametersGenerator&version=0.2.0
// Install FhirParametersGenerator as a Cake Tool
#tool nuget:?package=FhirParametersGenerator&version=0.2.0
FhirParametersGenerator
<p align="center"><img width="100" src="icon.png" alt="FhirParametersGenerator Logo"></p>
A PoC .NET source generator for mapping model classes to HL7 FHIR® Parameters resources.
Useful when interacting with FHIR® server operation endpoints.
Getting Started
dotnet add package FhirParametersGenerator
This sample code...
using FhirParametersGenerator;
using Hl7.Fhir.Serialization;
var t = new TestModel
{
Age = 123,
Name = "Test"
};
// this AsFhirParameters() extension method is code-generated
var asParameters = t.AsFhirParameters();
Console.WriteLine(asParameters.ToJson(new() { Pretty = true }));
// apply this attribute to the desired model class
[GenerateFhirParameters]
public class TestModel
{
public string Name { get; init; } = string.Empty;
public int Age { get; init; } = 0;
}
...will output:
{
"resourceType": "Parameters",
"parameter": [
{
"name": "name",
"valueString": "Test"
},
{
"name": "age",
"valueDecimal": 123
}
]
}
Limitations
This library is in a very early stage and many edge and not-so-edge cases that are not covered by the generated source. The list of open issues is a good starting point to see what isn't yet supported. Contributions are of course always welcome.
Credits
Source Code
Contains source code published under the terms of the MIT license originally from https://github.com/andrewlock/NetEscapades.EnumGenerators/ and from https://github.com/dotnet/runtime/blob/v6.0.2/src/libraries/System.Text.Json/Common/JsonCamelCaseNamingPolicy.cs.
Icon
The package icon is composed of
- Fire by artworkbean from NounProject.com
- Edit by Logan from NounProject.com
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows |
.NET Core | netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.1 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.1
- 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.