Showing posts from 2011

Deploying Databases with Object-Level Permissions

As I mentioned in my last post, we’re currently creating some guidance on deploying enterprise-scale applications. As we go along, I plan to blog about a few of the things that I find particularly tricky to figure out.

This time I want to look at database deployment. When you build a web application project in Visual Studio 2010, the Web Publishing Pipeline features allow you to hook into the IIS Web Deployment Tool (commonly known as “Web Deploy”) to package and optionally deploy your web application. As part of this process you can also deploy local databases to a target server environment. This is all nice and easy to configure through the project property pages in Visual Studio 2010, as shown below.
I don’t want to describe this process in any detail, you can find that elsewhere on the web (for example here).
Deploying databases in this way has advantages and disadvantages. On the plus side: It’s easy. It’s UI-driven. It figures out most of the settings for you. On the downside: …

Deploying Web Packages as a Non-Administrator User

Regular readers (all six of you ;-)) will have noticed that I haven’t posted about SharePoint for a while. For the last couple of months I’ve been working with the Developer Guidance team at Microsoft to write some MSDN content on enterprise-scale web deployment and application lifecycle management. I’ll let you know when the content is available, and I don’t plan to duplicate it here. What I want to do is just to draw attention to a couple of areas that I found particularly tricky to figure out.
The first area involves the IIS Web Deployment Tool (commonly known as “Web Deploy”), and a gotcha around deploying web packages as a non-administrator user. For brevity I’ll have to assume that you’re broadly familiar with:
Creating web packages for web application projects in Visual Studio 2010 (for example, see ASP.NET Web Application Project Deployment Overview). The various different approaches you can use to deploy web packages (for example, see Using Web Deploy Remotely).
One of the b…

Working with the Documents Tab on the SharePoint Ribbon

This week I've been taking a look at using ribbon controls with the SharePoint JavaScript client object model to drive some custom functionality. Ribbon customizations for SharePoint 2010 are fairly well documented. However, when you work with contextual tab groups—and the Documents tab in particular—there are a few nuances and idiosyncrasies that it's worth being aware of up front.

In this case, I want to add a ribbon button that enables the user to perform some additional actions when they select a file in a document library. There are countless scenarios in which you might want to do this – for example, you might add a "Request a copy of this document in large print/audio format/Welsh" control to the ribbon and use the document metadata to prepopulate an InfoPath form. To start with, however, I want to keep it simple:
When the user selects a document in a document library, display a button on the ribbon.When the user clicks the button, display some information abou…

Very Slow Upload Speeds to SharePoint Document Libraries?

Using Windows 7 or Windows Server 2008 R2? The problem could be the LAN settings in Internet Explorer.

Here at Content Master we've been trying to get to the bottom of a problem where some users were having trouble uploading files to a SharePoint 2007 deployment. In each case, the users were opening the document library in Windows Explorer and dragging files across (in other words, uploading files using WebDAV over SSL). Reported upload speeds were dropping as low as 1-2kb/second and users were cursing SharePoint left, right and centre.

The front end server and the database server were showing very little load, and the fact that some users seemed unaffected suggested that this was a client-side problem. After much head-scratching, I stumbled across a post from SharePointNation, and a thread on TechNet, that reported how a similar problem was solved by changing the LAN settings in Internet Explorer. I tried it myself, with some degree of scepticism - and it immediately solved the p…

Conditional Formatting of List Views for SharePoint 2010 – Changing the Font Colour

There are often times when it's useful to draw attention to particular items in a SharePoint list or library. For example, you might want to highlight overdue tasks, colour-code items according to priority, or draw attention to undesirable information. In other words, you want to apply conditional formatting based on field values. Now, as you probably know, SharePoint 2010 uses XSLT-based list views by default. By editing the XSLT for a list view you can apply all manner of rules and conditional formatting. Even better, SharePoint Designer 2010 includes some built-in tools that will figure out the XSLT for you. In the List View Tools tab group, on the Options tab, there's a handy dropdown menu:

In most cases, you're probably going to want to apply conditional formatting by row. First you set your conditions:

Then you choose the styles you want to apply when the conditions are met.

When you've set your style, SharePoint Designer modifies the XSLT so that your formattin…