The Plist Addin for Cake allows you to serialize and deserialize xml plists directly from .NET source code.
C# Shell PowerShell
Permalink
Failed to load latest commit information.
src/Cake.Plist
tests/Cake.Plist.Tests
tools Updated to Cake.Core 0.13.0 Jul 5, 2016
.gitattributes Add .gitignore and .gitattributes. May 3, 2016
.gitignore
.travis.yml
Cake.Plist.sln Updated LICENSE, ReleaseNotes, build files & .gitignore May 4, 2016
LICENSE.md Updated LICENSE, ReleaseNotes, build files & .gitignore May 4, 2016
README.md Updated Readme and release notes Jul 6, 2016
ReleaseNotes.md Updated Readme and release notes Jul 6, 2016
build.cake Added tests to build.cake Jul 5, 2016
build.ps1
build.sh

README.md

Cake.Plist Addin

nuget pre release

This Addin for the Cake Build Automation System allows you to serialize and deserialize xml plists. More about Cake at http://cakebuild.net

Use the addin

To use the Plist in your cake file simply import it and define a task. In the following example we are updating the Info.plist of our iOS project.

#addin "Cake.Plist"

Task("update-ios-version")
    .Does(() => 
    {
        var plist = File("./src/Demo/Info.plist");
        dynamic data = DeserializePlist(plist);

        data["CFBundleShortVersionString"] = version.AssemblySemVer;
        data["CFBundleVersion"] = version.FullSemVer;

        SerializePlist(plist, data);
    });

IMPORTANT You have to define the data variable explicied as dynamic. Otherwise Roslyn implies object which will follow in build error.

Build

To build this package we are using Cake.

On Windows PowerShell run:

./build restore
./build

On OSX/Linux run:

./build.sh restore
./build.sh

Run pack alias to create a nuget package.