Recently I was challenged with the task to set the layout and content of a wiki page when a new page is added to a team site. As I'm used to work with SharePoint publishing the task sounded easy, but I was wrong.
With SharePoint it's easy to configure multiple zones for your SharePoint Web Application. For example you have a Publishing Web Site with two zones.
After the content is published it'll also be available on the anonymous site and most of the URLs will be automatically translated to corresponding zone URL.
There are however some places this is not the case.
In a previous post I have written about Using the people picker over a one-way trust. In this post I use STSADM commands as there are no other ways to configure this. A downside of the STSADM command is your domain password being visible on the command prompt in clear text for everybody to read, or to retrieve from the command line history.
SharePoint 2010 introduces several cmdlets to replace the “old” STSADM commands. Microsoft has posted an overview of the STSADM to Windows PowerShell mapping. However the commands for configuring the people picker are not available.
With SharePoint 2010 the amount of databases on your SQL server has grown quite a bit. By default most of these databases have their recovery model set to 'FULL'. After some time you will discover you're running out of space.
When you have a SharePoint farm and you want to use accounts from another domain you need a partial (one-way) or a full (two-way) trust between those domain.
A full trust is not always desirable and there your problem begins. After setting up the one-way trust you can authenticate with an account from the trusted domain, but the SharePoint People Picker doesn't show any accounts from this domain.
It has been documented by others before, but as I ran into this recently I'll give my summary how I fixed this.
I wanted to use the new REST services in SharePoint 2010.
But when I navigated to the ListData.svc service. I got the following error: “Could not load type 'System.Data.Services.Providers.IDataServiceUpdateProvider' from assembly 'System.Data.Services, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.”
Today the news broke Microsoft has extended the support for installations of Windows SharePoint Services 3.0 SP1, Microsoft Office SharePoint Server 2007 SP1 and Project Server 2007 SP1.
Now and again I come across code with hardcoded SharePoint IDs in it. Or scary loops matching a field, list or property name. SharePoint provides some classes containing the out of the box IDs, you only have to know they exist. I made an overview so nobody has to hardcode those pesky GUIDs, ContentTypeId's or property names.
The past couple of weeks I'm working with Silverlight controls embedded in SharePoint 2007. For one of the controls I need to retrieve the data using the Search Query Web Service. This was working perfectly in the development environment. But when deploying the control to the production environment it didn't work.
With the introduction of the August Cumulative Update for SharePoint 2007 (KB973399) we encountered “System.NullReferenceException: Object reference not set to an instance of an object.” on all pages inheriting from MySitePublicWebPartPage.
On CodePlex you can find the “MOSS 2007 - C# Protocol Handler” project. When working with the code I discovered 2 issues which I both fixed. Both solutions are summarized here.
As announced yesterday by Microsoft the Office 2010 products will be 64bit only. Well no surprise there, we already knew that. But they went even further: Windows Server 2008 and SQL Server on 64bit is a must for ensuring the best performance possible.
It is a sad and known fact that having lots of ACLs in your SharePoint database has a negative effect on the performance of your site. What I did not know yet was that changes to the ACL will impact you incremental crawls.
I have a clean install on the latest and greatest: Windows Server 2008, SQL Server 2008 and MOSS 2007 SP1 with all updates. Everything works fine, except the search crawl gave Access Denied errors on http://mysite and sps3://mysite. This post explains how I fixed the problem.
While working on a project with some existing code I noticed the developer did write large portions of code to get from an URL to a SPList. He probably didn’t know some of the hidden gems in SharePoint.
Sometimes you have to split your code into different assemblies. For example when I created a custom Admin Page which inherits from WebAdminPageBase (Microsoft.SharePoint.ApplicationPages). The problem with Microsoft.SharePoint.ApplicationPages is that it's not deployed to the GAC. When compiling you will get the following message: “CS0122: 'foo.bar.x' is inaccessible due to its protection level”
Now you have only one choice: make x public. Or maybe not?
Lately I am working a lot with LINQ and al types like LINQ to XML, LINQ to XSD, LINQ to objects, etc. Today I had to build some functionality in SharePoint where I had to split users in 2 groups based on a profile property in their User Profile. In this post I will show you how I did this.