How to Create new Session in Connected Services Framework(CSF) ?

using System;
using Microsoft.Web.Services3;
using Microsoft.Web.Services3.Design;
using Microsoft.ConnectedServices.Sdk;
using Microsoft.ConnectedServices.Sdk.Client;
using Microsoft.ConnectedServices.Sdk.Messaging;
using Microsoft.ConnectedServices.Sdk.Addressing;
using Microsoft.ConnectedServices.Contracts.Session;
using Microsoft.ConnectedServices.Sdk.Security.Tokens;

///


/// Create new session based on the Message
///

///
/// Return the SessionResponse Object on successful completion
/// otherwise throws SoapException
///

private CreateSessionResponse CreateSession()
{
CreateSessionRequest request = new CreateSessionRequest(GetSessionManifest());
Message sessionCreateMessage = Message.CreateMessage( SessionActions.CreateRequest, new Uri(_sessionManagerAdminUri), request );

// Add Security Header
sessionCreateMessage.Header.Security.Add(SecurityUserToken());
MessageSender sessionCreateSender = new MessageSender();
try
{
// Create the session synchronously!
CreateSessionResponse response = sessionCreateSender.SendSync( sessionCreateMessage );
return response;
}
catch (Exception ex)
{
throw ex;
}
}