![]()
A fluent data builder for json and xml
FluentDataBuilder has some NuGet-Libraries to generate output:
install the nuget FluentDataBuilder.Json and follow the general DataBuilder steps. the following code is a sample for the initialization with System.Text.Json.
IDataBuilder builder = new DataBuilder(); ... JsonDocument jsonResult = builder.Build(); install the nuget FluentDataBuilder.NewtonsoftJson and follow the general DataBuilder steps. the following code is a sample for the initialization with Newtonsoft.Json.
IDataBuilder builder = new DataBuilder(); ... JObject jsonResult = builder.Build(); With this package you can store the DataBuilder instance directly as an IConfiguration instance.
install the nuget FluentDataBuilder.Microsoft.Extensions.Configuration and follow the general DataBuilder steps. the following code is a sample for the initialization with Newtonsoft.Json.
IDataBuilder builder = new DataBuilder(); ... IConfiguration configuration = builder.ToConfiguration(); install the nuget FluentDataBuilder.Xml and follow the general DataBuilder steps. the following code is a sample for the initialization with System.Xml.
IDataBuilder builder = new DataBuilder(); ... XmlDocument xmlDocument = builder.Build(); install the nuget FluentDataBuilder.Yaml and follow the general DataBuilder steps..
IDataBuilder builder = new DataBuilder(); ... string yamlContent = builder.Build(); First you need to create an instance:
IDataBuilder builder = new DataBuilder(); Use the Add-Method to add data:
builder.Add("StringProperty", "a value"); builder.Add("NumericProperty", 12345); builder.Add("BooleanProperty", true); result (in json):
{ "StringProperty": "a value", "NumericProperty": 12345, "BooleanProperty": true } builder.Add("ListProperty", new List<string> { "this", "is", "a", "test" }); builder.Add("ArrayProperty", new string[] { "this", "is", "a", "test" }); builder.Add("MixedListProperty", new List<object> { "value", 123, true, 456.78 }); result (in json):
{ "ListProperty": [ "this", "is", "a", "test" ], "ArrayProperty": [ "this", "is", "a", "test" ], "MixedListProperty": [ "value", 123, true, 456.78 ] } builder.Add("ObjectProperty", new DataBuilder() .Add("StringProperty", "another value") .Add("NumericProperty", 67890) .Add("BooleanProperty", false)); result (in json):
{ "ObjectProperty": { "StringProperty": "another value", "NumericProperty": 67890, "BooleanProperty": false } }