InterpolationFormatProvider 2.0.0
A format provider for string.format that can use dictionary keys or property names as formats i.e "{0:Username} joined on {0:JoinDate:D}" produces "John Doe joined on Thursday, October 22, 2014"
Install-Package InterpolationFormatProvider -Version 2.0.0
dotnet add package InterpolationFormatProvider --version 2.0.0
<PackageReference Include="InterpolationFormatProvider" Version="2.0.0" />
paket add InterpolationFormatProvider --version 2.0.0
#r "nuget: InterpolationFormatProvider, 2.0.0"
// Install InterpolationFormatProvider as a Cake Addin
#addin nuget:?package=InterpolationFormatProvider&version=2.0.0
// Install InterpolationFormatProvider as a Cake Tool
#tool nuget:?package=InterpolationFormatProvider&version=2.0.0
Note that the namespace has changed with this version. From Grax to Grax32
Here is sample code demonstrating the provider with a POCO, an anonymous object, a dictionary, and an Expando object.
using Grax32;
[TestMethod]
public void TestMulti()
{
var item0 = new TestThingy {SomeNum = 34, OtherNum = 55};
var item1 = new {AnonValue = "xzy", AnonName = "Anon Obj"};
var item2 = new Dictionary<string, string>() {{"mykey", "myvalue"}};
dynamic item3 = new ExpandoObject();
item3.ExpandoDate = new DateTime(2000, 1, 3);
item3.Title = "Title";
var result = string.Format(new InterpolationFormatProvider(),
"{0:SomeNum}, {1:AnonValue}, {2:mykey}, {3:Title}",
item0,
item1,
item2,
item3);
Assert.AreEqual("34, xzy, myvalue, Title", result);
}
Note that the namespace has changed with this version. From Grax to Grax32
Here is sample code demonstrating the provider with a POCO, an anonymous object, a dictionary, and an Expando object.
using Grax32;
[TestMethod]
public void TestMulti()
{
var item0 = new TestThingy {SomeNum = 34, OtherNum = 55};
var item1 = new {AnonValue = "xzy", AnonName = "Anon Obj"};
var item2 = new Dictionary<string, string>() {{"mykey", "myvalue"}};
dynamic item3 = new ExpandoObject();
item3.ExpandoDate = new DateTime(2000, 1, 3);
item3.Title = "Title";
var result = string.Format(new InterpolationFormatProvider(),
"{0:SomeNum}, {1:AnonValue}, {2:mykey}, {3:Title}",
item0,
item1,
item2,
item3);
Assert.AreEqual("34, xzy, myvalue, Title", result);
}
Release Notes
Support for DotNet Core
Dependencies
-
.NETFramework 4.0
- No dependencies.
-
.NETStandard 2.0
- No dependencies.
-
.NETStandard 2.1
- No dependencies.
Used By
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.