SharePoint 2010 Search Page and the UIVersionedContent control

The default SharePoint 2010 Search center has a nice predefined results page for you,
containing a nice set of WebParts. However if you create a Search Center you can see
that returning to your site is a pretty hard task. So today someone asked me if we
could make a page-layout exactly like the default search results page, allowing them
to create resultpages anywhere in their portal. That being said, the only thing I
had was the SharePoint Designer, luckily for me it was a 2010 project :).

So first thing I did was copying the default WelcomeLinks.aspx pagelayout, since that
page has no left sidebar, next thing was to simply copy the table structure to the
page and tweaking it a bit. However after checking it in, and publishing it, I got
stuck with an unknown error. After some debugging my logs shows the error:

Exception No parameterless constructor defined for this object.

After some more debugging it seems that one of the WebParts on the default search
page got an invalid property, so after deleting all the WebParts, leaving me with
an empty page with nothing but some WebPartZones I checked it in, and published it
again. Just to bring me the next error:

Unknown server tag 'SharePoint:UIVersionedContent'.

For some reason the WelcomeLinks.aspx is allowed to use the UIVersionedContent, but
as soon as you ‘customize’ it, you aren’t anymore. Adding the next line will do the
trick:

<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls"
Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
%>

After that you’re good to go, and you will have a nice SearchResults look-a-like pagelayout.

Result:

SearchResults.zip
(2.08 KB)

Leave a Reply