It requires W2k3 server or higher to run it (and it must be installed to allow you to code against). This means that most devlopment is performed using virtual pc’s (which is painful).
Some of the documentation is wrong. The bold line was missing from the following:
using (SPSite oSiteCollection = new SPSite(SiteName()))
{
Debug.WriteLine(oSiteCollection.ToString());
using (SPWeb oWebsiteRoot = oSiteCollection.OpenWeb(CoreWebName()))
{
oWebsiteRoot.AllowUnsafeUpdates = true;
SPList oList = oWebsiteRoot.Lists[RawMessageList()]; // Get this from a config file
SPListItem oListItem = oList.Items.Add();
oListItem[“Title”] = Reference;
oListItem[“Created”] = DateTime.Now;
oListItem[“Modified”] = DateTime.Now;
oListItem[“Author”] = AuthorId();
oListItem[“Editor”] = AuthorId();
oListItem[“MsgType”] = MsgType;
oListItem[“Reference”] = Reference;
oListItem[“MsgBody”] = MsgBody;
oListItem.Update();
}
}
This meant that the webservice that I was writing to populate a list was failing with
The security validation for this page is invalid.
I found this article that pointed me in the correct direction.
I am using webservices to abstract the list population so that I can have applications that are not dependent upon Sharepoint yet still can still work with sharepoint. This will allow them to be tested on any dev machine, not just our Sharepoint farm.