Automatically publishing files provisioned with Sandboxed Solutions

Sandboxed Solutions are a new capability of SharePoint 2010 that make it possible to run custom code in a safe manner. The Sandbox isolation has unfortunately some trade offs and consequences, one of which is the fact the every file you provision with a Sandboxed Solution is checked out by default. Find out how you can work around this default behavior and automatically check in all your files without too much manual effort.

Inconvenient ASP.NET cookies

Recently I’ve been working on a SharePoint solution that was persisting some state information. Originally this solution was relying on Session State but because of some extra configuration complexity that using Session State with SharePoint requires we decided to replace the Session State with cookies. Although both approaches are not exactly the same they were both sufficient in the scope of the solution. And although you might expect no rocket science when working with ASP.NET cookies there are a few things that keeping in mind might save you some painful hours.

Inconvenient Content Query Web Part and provisioning it to the right place

Content Query Web Part is one of the most frequently used Web Parts available out of the box with SharePoint Server 2010. Thanks to its flexibility, great performance and rich configuration possibilities it’s a great solution for aggregating content. Because the presentation layer of the CQWP is based on XSLT, the possibilities are virtually unlimited, but as soon as you start using custom XSLT stylesheets some strange things start to happen.

Inconvenient Content Query Web Part and server-relative URLs

Content Query Web Part is probably the best solution for creating dynamic content rollups in SharePoint 2010. It’s lightning fast and because it’s using XSLT it allows you to easily change layout without touching your data. And although changing the presentation in Content Query Web Part is a matter of a few mouse clicks, it gets quite inconvenient when you start using custom XSLT files.