Manipulating list items in SharePoint Hosted Apps using the REST API

In this post I will describe how to use the REST API to manipulate list items from within a SharePoint hosted App. For information on the different hosting options available (Azure Auto hosted and Provider Hosted Apps) there is a good MSDN article here. Introduction The REST API in SharePoint 2013 provides developers with a…


Managing Different Styles of Development Team (Part 2 of 2)

This is the second part that looks at different styles of SharePoint development teams. The premise is that not all teams have the same attributes. Well, no surprise there. You can find part 1 here: Managing Different Styles of Development Team (Part 1) The two attributes of the team that we’ve looked at are: how…


Managing Different Styles of Development Teams

Within Microsoft Services, Solution Architects cover the full range of activities from pre-sales activities through to helping with development and deployment of projects. When we run with SharePoint development projects, we get to work with many teams. Some of them are very experienced with SharePoint, and some not so. Some are happy that SharePoint is…


Quick Tip: Provisioning a List View to a Web Part Page

Following on from my recent post (Provisioning Web Parts to a Page), I had a question asking how to do this for List Views. Below is a code sample showing how to do this… 1: <?xml version="1.0" encoding="utf-8"?> 2: <Elements xmlns=""> 3: <Module Name="XYZCustomPages" RootWebOnly="True"> 4: <File Path="XYZCustomPages\Home.aspx" Url="Home.aspx" IgnoreIfAlreadyExists="true"> 5: <View List="Lists/Tasks" BaseViewID="0" WebPartZoneID="Left"…


Deploying Files to the Root of a SharePoint Web Application

I’ve recently been working on a project where a Silverlight App sitting on a separate url calls through to a WCF service hosted in SharePoint. For this to work, a “clientaccesspolicy.xml” file is required at the root of the SharePoint web application. This file will contain the following: 1: <?xml version="1.0" encoding="utf-8"?> 2: <access-policy> 3:…


How To Remove "Use My Local Drafts Folder" Checkbox

Lots of customers I work with establish a requirement that files must be ‘checked out’ from SharePoint before they can be edited. This prevents multiple users from overwriting one another’s changes to files. The “check-out and check-in” functionality is a widely used in SharePoint and is just one of the many Enterprise Content Management features available in SharePoint 2010…


Quick Tip: Provisioning Web Parts to a Page

When deploying a page to SharePoint through a Modules feature, there are several options adding web parts to this. These are as follows: Add the web parts to the page programmatically via a feature receiver. This approach can be done quickly and easily if you are familiar with coding, however if the feature receiver fails, the web…


Office Communicator integration (Presence) in a custom webpart for SharePoint 2010

I recently spent a while trying to integrate the Office Communicator presence pawn into a custom web part and found it a little tricky so wanted to share my learning’s. With SharePoint 2010’s new social capabilities, I see this integration as being a must-have for any webpart or other custom interface that refers to people….


Using custom Event Log Sources on Least Privilege SharePoint Servers

As you will surely be aware, it is best practice to install production SharePoint farms using something called the “least privilege account principle”. This effectively means that each service account in the farm is dedicated to a specific job and has only the minimum rights required in order to do that job. This is best…


Modifying out-of-the-box SharePoint Server 2007 files

One of the most common and simple ways to customise SharePoint is to directly modify the files that are installed as part of the product (referred to as ‘SharePoint-owned’ files). This is common practice; but not necessarily good practice for many reasons, the most obvious being that this type of customisation is officially unsupported. In…