JsonPoke.MSBuild 1.0.7

dotnet add package JsonPoke.MSBuild --version 1.0.7                
NuGet\Install-Package JsonPoke.MSBuild -Version 1.0.7                
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="JsonPoke.MSBuild" Version="1.0.7">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add JsonPoke.MSBuild --version 1.0.7                
#r "nuget: JsonPoke.MSBuild, 1.0.7"                
#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 JsonPoke.MSBuild as a Cake Addin
#addin nuget:?package=JsonPoke.MSBuild&version=1.0.7

// Install JsonPoke.MSBuild as a Cake Tool
#tool nuget:?package=JsonPoke.MSBuild&version=1.0.7                

JsonPoke and JsonPeek build tasks:
Usage :
JSON Poke:
   1. <JsonPoke JsonInputPath="$(MSBuildProjectDirectory)\Project.json" JValue="Empty-FromTest1" JPath="Project.Name">
</JsonPoke>
2 a. <JsonPoke JsonInputPath="$(MSBuildProjectDirectory)\Project.json" JArray="@(TestArray1)" JPath="Project.TestArray" Metadata="MyProp;Identity">
</JsonPoke>
2 b. <JsonPoke JsonInputPath="$(MSBuildProjectDirectory)\Project.json" JArray="t11.txt;t22.txt" JPath="Project.TestArray1">
</JsonPoke>
3. <JsonPoke JsonInputPath="$(MSBuildProjectDirectory)\Project.json" JObject="@(BuildNumber)" JPath="Project.TestObject" Metadata="Major;Minor;Build">
   <PropertyGroup>
     <JsonContent>
       <![CDATA[{
 "Projects":[
{ "Name": "P1",  "OutputFile": "P1.json",    "Variables": [  "Var1", "Var2" ]},
{  "Name": "P2", "OutputFile": "P2.json",    "Variables": [  "Var1", "Var2"  ] } ] }
]]>
     </JsonContent>
   </PropertyGroup>
   <JsonPeek JPath="$.Projects" JsonContent="$(JsonContent)">    
     <Output TaskParameter="Result" ItemName="TestProjects" />
   </JsonPeek>
   <Message Text="Project.IncludedLibraryVariableSetIds[?(@.Name == 'Lib-69')].Value : @(Lib69Value)" />
   <Message Text="Project values: %(TestProjects.Name)" />

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on JsonPoke.MSBuild:

Repository Stars
MonoGame/MonoGame
One framework for creating powerful cross-platform games.
Version Downloads Last updated
1.0.7 378 12/15/2014
1.0.6 551 11/12/2014
1.0.5 226 11/11/2014
1.0.4 544 11/4/2014
1.0.3 136 10/2/2014
1.0.2 84 9/24/2014
1.0.1 74 9/24/2014
1.0.0 75 9/24/2014

1.0.2: Added JPath derived from Newtonsoft.json http://james.newtonking.com/archive/2014/02/01/json-net-6-0-release-1-%E2%80%93-jsonpath-and-f-support
1.0.4 : Fixing JSONPeek to return ITaskItem[] Result as output
Upgrade to this version, Need change from .Value to .Result
1.0.5 : Support for JsonContent and JsonInputPath.
Upgrade to this version needs change from FullFilePath and JsonFile to one JsonInputPath property
1.0.6 : JsonPeek enhancements:
a. Returing Result as array if JPath points to an array.
b. Returning Meaningfull object that simple strings, so support for batching: If the Result Item is an object, then we are exposing all attributes as metadata on the Result item. For Array of simple values like array of strings, "Value" metadata is exposed, so that %(array.Value) will work
1.0.7 : JsonPoke: Support for setting Objects and Object array via JObject and JArray, along with Metadata properties.