In Memory PnP Provisioning Templates in PowerShell

Last month we released some new cmdlets really useful to play with the PnP Provisioning Templates in memory. In this post I want to share with you how to leverage them in your everyday life, as well as while creating new PnP Provisioning Templates that you want to submit into the new PnP Templates Gallery. […]

Read more

Using SharePoint REST API from PowerShell

In this short post I want to explain you how to use the SharePoint REST API from PowerShell, targeting a SharePoint Online site collection. As you probably know, you can do almost everything (and when I say everything, I really mean everything Smile …) using the PowerShell extensions created by my friend Erwin van Hunen, […]

Read more

Slides and demos of my session at CEUS by Iberian SPC

Here you can find the slides of my session “Remote Provisioning with the new PnP Provisioning Engine” at the CEUS by Iberian SPC. Moreover, here follow the demos: Sample of Remote Provisioning with CSOM. Just to show how it works, but I suggest to use the PnP Provisioning Engine, instead. Visual Studio sample about how […]

Read more

Introducing the PnP Provisioning Engine

This week at the Microsoft Ignite conference we introduced the new PnP Provisioning Engine. What is PnP? Before talking about the new Provisioning Engine, let me introduce you the PnP group. PnP stands for Office 365 Developers Patterns and Practices. I’m proud of being one of the PnP Core Team members, and what we do […]

Read more

Uploading a file into a library via CSOM, even if the library does not exist

A customer of mine asked me how to upload a file, using CSOM from .NET, into a target library/folder regardless the target folder already exists or not. Here you can see a code sample, which leverages the ExceptionHandlingScope available in CSOM. static void FileUploadWithExceptionHandlingScope() { ClientContext ctx = new ClientContext(“http://demo-sp2013.sharepoint.local/sites/DemoSite/“); ExceptionHandlingScope scope = new ExceptionHandlingScope(ctx); […]

Read more