«

»

Apr 24

SharePoint Evolution Conference 2015 round up

This post comes at the end of a very busy week! Starting with SharePoint Saturday Belgium last weekend (read more about that here) and continuing with the SharePoint Evolutions Conference in London from Monday.

For those who don’t know what the SharePoint Evolution Conference is, it was the largest SharePoint conference in the world this year since MS decided to join TechEd, SPC and all the other conferences into one! 3 days of awesome content delivered by Industry experts, MVPs, Microsoft staff and of course myself, across 8 individual tracks covering IT Pro, Dev, Business, Information Workers, Azure and Office 365. That’s 160 sessions of content!

There is also the conference party, which this year was a Masked Ball extravaganza at the Cafe Du Paris nightclub in London’s Piccadilly Circus. Lots of live music from 2 bands and the infamous Lisa Lashes on the decks in the Pink Party Room.

I was presenting a new session, “Building a forms catalogue in Office 365” where we charted the progression of a client from an old legacy solution into an Office 365 based solution utilising Content by Search Web Parts, Managed Metadata Navigation, List View Display Templates, JSLink and SharePoint Enterprise Search.

One of the other aspects that I touched on, was the use of PowerShell and CSOM to deploy assets into office 365 from a client PC. I initially created by Metadata, Sites, display templates, Site Columns and Content types in my MSDN development tenant, but for the demo, I wanted to work with a brand new SharePoint site to avoid any contamination of search.

I realised that this was going to need to be done at fairly regular intervals in the run up to the conference as I was using 30 day demo tenants, so I began by creating a configuration XML file that described the assets I was creating, including any particular settings they needed. I then wrote PowerShell to deploy these assets using CSOM.

Working with CSOM from PowerShell is very different to working server side, you need to understand the limitations of the asynchronous model and the slightly reduced feature set available to you in CSOM.

I’m not going to dive deeply into this right now, but as a quick overview of the process, the first thing we need is a reference to a local copy of the SharePoint client side DLLs..

image

These can be obtained from the patterns and practices Git Hub site which contains the latest versions.

Once you have them in place, we can connect to our SharePoint Online site and authenticate the session.

image

With a SharePoint Context available, we can now connect to our site collection or sub-site and query the content, create new assets or do any of the other activities exposed to use through the CSOM dlls.

image

In the example above, we’re just getting the collection of Content Types and Site Columns so that we can iterate through them.

I used this process heavily during the creation of my demos and it features during the 1st and 2nd demos (although I think in future I’ll merge these demos as there isn’t that much exciting about watching a PowerShell prompt while it creates stuff!)

I did say in the session that I would make my config files and scripts available for attendees to look at and analyse, and these are available to download here.

I will however caution that these scripts are for DEMO purposes only and are not production quality as they were written specifically to  demonstrate possibilities and to build the demo sites.

I found this method to generate Office 365 sites and content quickly was very useful, and I’m planning to explore this further, and hopefully produce some more content on this subject shortly.

Paul.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.