Yes, believe it or not, we still use WSPBuilder for a number of our older projects.I recently came across a bit of an oddity, though, regarding the ‘Buildmode‘ parameter. Continue reading “WSPBuilder – Buildmode oddity”
Office 365 SharePoint – Higher level observations
Previously I’ve discussed some of the technical observations I made while working with Office 365. I’ve also noticed some ‘higher-level’ features of the project, and some discussions we’ve had about other opportunities. Here are some the the things that might well need addressed… Continue reading “Office 365 SharePoint – Higher level observations”
Office 365 – Technical observations from a first project
Recently I’ve been working on an Office 365 based SharePoint solution. It’s a system to allow a company to create sites to collaborate with their customers, and I learnt some interesting things on the way. In part 1 I’ll deal with the technical side of things, and in part 2 I’ll look at more ‘project’ level observations. Continue reading “Office 365 – Technical observations from a first project”
Dealing with Large Lists Part 3 – The ContentIterator
In Part 1 we looked at the problem of the query throttle in SharePoint 2010, and in Part 2 we looked at some of the ways of getting around that. In this part, though, we’ll look at what I think is the best way – the ContentIterator control. Continue reading “Dealing with Large Lists Part 3 – The ContentIterator”
Dealing with Large Lists Part 2 – Coping with large queries
In Part 1 we looked at what throttling was, why queries could be throttled, the settings that control throttling, and some of the references to other useful information. In this post we’ll look at ways of trying to get your query to run anyway, depsite the throttle. “Writing Efficient Code In SharePoint Server” is a good introduction to the general principles. Continue reading “Dealing with Large Lists Part 2 – Coping with large queries”
Dealing with Large Lists Part 1 – What is throttling and how it causes difficulty
‘Large’ lists – lists with over a few thousand items – can cause problems when you’re developing for SharePoint, and the whole topic is kind of complicated. So what’s the problem?
Well, fundamentally the issue is inefficient queries being run against SharePoint lists. An inefficient query against a list with a small number of items isn’t a big deal, but with larger lists (over 5000 items) SQL server has to escalate from a row-level lock to a table-level lock. This can hold up other users while the table is locked.
So, what are the limits, what options are there with throttling, and what strategies are there for mitigating the effects of query throttling? Continue reading “Dealing with Large Lists Part 1 – What is throttling and how it causes difficulty”
Lorem() function to create a Lorem Ipsum in Word
Just a little tip – you can create Lorem Ipsum text in Word 2007 or later. Just type:
=lorem(5,6)
…and press return. The numbers refer to the number of paragraphs and the number of sentences per paragraph respectively.
Working with the TaxonomyClientService: Part 4 – Populating Values with the Lists web service
So far I’ve discussed how to get information about getting the types of taxonomy field, working with those fields, and how to get term sets. What about setting values on list items?
It isn’t immediately obvious how to do that. For a start, we wouldn’t actually be using the TaxonomyClientService. To set values on items, you use the Lists web service, using the UpdateListItems() method. This accepts XML describing the field and values.
But what fields do we submit, and what values? After all, as mentioned in part 1, there are two fields – one for the displayed value, and a hidden ‘notes’ field that contains the actual data!
There was no documentation about how to set these values, and limited and contradictory information in blog posts, so I investigated…
Working with the TaxonomyClientService: Part 3 – Caching
In Part 2 of this series I described how to retrieve a TermSet, and interpret the results. I suggested using code:
string clientTimestamps = string.Format("<timeStamp>{0}</timeStamp>", lastClientCacheTime );
string clientVersion = "<version>1</version>";
string termStoreIds = string.Format("<termStoreId>{0}</termStoreId>", termStoreId.ToString("D"));
string termSetIds = string.Format("<termSetId>{0}</termSetId>", termSetId.ToString("D"));
string serverTermSetTimestampXml;
string result = _wssTax.GetTermSets(termStoreIds, termSetIds, 1033, clientTimestamps, clientVersion, out serverTermSetTimestampXml);
Fine, but what are these properties we’re passing into GetTermSets()? Continue reading “Working with the TaxonomyClientService: Part 3 – Caching”
Reminders on customising the RichTextField control in Publishing
Right, so, again I’m looking at the problem of consistent formatting of client authored text in SharePoint. (Incredibly, it’s 4 years since I first looked at this).
Anyway, as a note to myself… Continue reading “Reminders on customising the RichTextField control in Publishing”
