This project requires the Camelot .NET Connector and at least a development license, which are free and renewable for all. To download the connector, visit
http://www.bendsoft.com/net-sharepoint-connector/download/ and follow the instructions. You will need to register (with no obligations whatsoever) to get your free development license.
- Download the latest recommended binary release from downloads
- Run setup, and follow the instructions
- When, complete, the setup will ask you if you wish to start the "Camelot SharePoint Integration Service" and test the service. For your convenience, check both and finish installation. The service will then be automatically started and tested through your
browser. If everything is fine, the CamelotService page will show up. If something went wrong, you probably forgot to install the Camelot .NET Connector.
Reconfiguring the WCF service
Before testing the WCF service, you will need to configure the endpoint of the service and setup connectionstrings for the connector.
- From the Windows start menu, locate the "Camelot SharePoint Integration Toolkit" under programs. Stop the WCF service by clicking "STOP Camelot SharePoint Integration Service".
- From the location, open the application configuration associated to the integration service, click "Application XML Configuration". You will need a suitable XML editor installed to open this file.
First, modify the shared key. This key is shared between the service and all clients and must be provided when calling the service.
- Under appSettings, modify the value of "SHARED_KEY" to the key of your choice
Modify CDATA option (optional). This setting indicates whether text in CamelotXml's are enclosed in CDATA brackets or with traditional xml escaping (default)
- Under appSettings, modify the value of "WRITE_CDATA" to true if you want to enable CDATA brackets.
Setup connection strings! Now, this part may need som explanation for new users. The Camelot WCF service uses the Camelot .NET Connector for querying SharePoint lists, views and document libraries. The connector is a ADO.NET driver for Microsoft SharePoint
that allows querying SharePoint using standard SQL syntax, kind of using SharePoint as a typical database. Similar do other databases, this connector requires a connection string for connecting to SharePoint (see
connection string options).
In the Camelot WCF service, connection strings are stored in the application configuration file. When calling the Camelot WCF service, the caller must specify the name of the connection string to use. You can configure as many different connection strings
as you wish in the configuration.
- Under connectionstrings, copy or modify the existing connection string called "sharepoint_connection". In the simpliest case, you should only need to change
Server, Database, User and Password. Server is the ip or hostname to your SharePoint server and username/password must be valid SharePoint credentials. The database option is the site path on the SharePoint server, for example
"HR" or "Development/Documentation".
NOTE! If your SharePoint server uses SSL (HTTPS), you must enable SSL in the connector by adding
SSL=True the connection string.
Configure the endpoint of the WCF service. In the configuration, locate the
services section. You may need to modify the default base address (http://localhost:8080) according to your needs. This will be the address to the Camelot WCF service.
- If necessary, modify value baseAddress.
Save the configuration file and restart the WCF service.
- From the Windows start menu, click "START Camelot SharePoint Integration Service"
Testing the WCF service
One way to test the service if you don't want to start coding right away is through
WCFStorm or similar program.
In WCFStorm, make a new connection to the Camelot WCF service.
When WCFStorm has discovered the service, you should be able to see all the methods on the left side.
Test the service by selecting one of the methods, for example the ExecuteCamelotXml method, and fill in the method parameters.
sql => For example "select * from Tasks" (selects all columns from the default view of the Tasks list). Please see the official
Camelot .NET Connector documentation for all supported SQL commands.
connectionString => The name of the connection string that you wish to use, for example "sharepoint_connection"
compression => Indicates if CamelotXml will be compressed (less data to send over the network), leave this as false (default) for now
sharedKey => Now comes the tricky part, in order to access the service, you must enter the
MD5 hash of the secret key. There are several good online tools available that you can use, such as
If everything goes fine, when invoking the ExecuteCamelotXml method, you should get a
CamelotXml as return value.
Using the toolkit in Visual Studio 2010
In order to use the Camelot SharePoint Integration Toolkit in VS2010 and write your own CamelotXml based applications, you need to add a reference to the Camelot.SharePointIntegration.dll (which is installed in the GAC).
- In VS2010, add a reference to the Camelot.SharePointIntegration.dll
You should now be able to use the library in your code.
Example: Querying list "Tasks" and the "All Tasks" view
using (var connection = new Camelot.SharePointConnector.Data.SharePointConnection(connectionString))
var data = Camelot.SharePointIntegration.ListData.CreateListData("Tasks", "All Tasks", false, connection);
var xml = Camelot.SharePointIntegration.CamelotXml.CreateXml(data);
System.IO.File.WriteAllText(xmlFile, xml, Encoding.UTF8);