home screen

Search



Number Of Result : 0

Result :


Monday, June 28, 2010

WCF is hosted on SharePoint site

- Create Empty SharePoint Project
- Set site http://nuvm64

- Create some files as the follow:





- Open IRevert.cs file





using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace WcfService
{
[ServiceContract]
public interface IRevert
{
[OperationContract]
void Revert(string listName, int listItemId);

[OperationContract]
void ChangeListName(string listName, string newListName);
}
}



- Open Revert.cs file





using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace WcfService
{
using Microsoft.SharePoint.Client.Services;
using System.ServiceModel.Activation;
using Microsoft.SharePoint;

[BasicHttpBindingServiceMetadataExchangeEndpointAttribute]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class RevertService : IRevert
{
public void Revert(string listName, int listItemId)
{
SPList oList = SPContext.Current.Web.Lists[listName];

SPListItem oItem = oList.GetItemById(listItemId);

if (oItem.Versions.Count > 1)
{
oItem.Versions.Restore(1);
}
}

public void ChangeListName(string listName, string newListName)
{
SPList oList = SPContext.Current.Web.Lists[listName];
oList.Title = newListName;
oList.Update();
}
}
}



- Open Revert.svc





<%@ServiceHost Language="C#" Debug="true"
Service="WcfService.RevertService, $SharePoint.Project.AssemblyFullName$"
Factory="Microsoft.SharePoint.Client.Services.MultipleBaseAddressBasicHttpBindingServiceHostFactory, Microsoft.SharePoint.Client.ServerRuntime, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>


- Open IE and go to http://nuvm64/_vti_bin/Revert.svc/MEX.

No comments: