I'm writing a custom code activity for workflows on the SharePoint 2013 platform and was hoping someone could show me how to access the workflow context in C# to get the current site URL. I know in SP 2010 custom activities you could pass in the __context parameter and then access that in your inherited Activity class, but is this possible in SP 2013? I can see that the execute method has an argument of the CodeActivityContext class but I don't see how to get workflow context specific properties from that variable.
See example code below and comment about getting the current site URL
// Example Code public sealed class TestActivity : CodeActivity<System.Guid> { // Define Input Arguments public InArgument<System.Guid> TestListId { get; set; } public InArgument<System.Guid> TestListItemId { get; set; } // Define Output Arguments public OutArgument<System.Guid> ListItemId { get; set; } // Overidden Excute Method of CodeActivity Class protected override System.Guid Execute(CodeActivityContext context) { using (SPSite Site = new SPSite("http:/host/site")) //This is where I need workflow context to get current site URL { using (SPWeb Web = Site.OpenWeb()) { SPDocumentLibrary TestLibrary = Web.Lists[context.GetValue(this.TestListId)] as SPDocumentLibrary; SPFile TestDocument = Web.GetFile(context.GetValue(this.TestListItemId)); context.SetValue(this.ListItemId, TestDocument.UniqueId); } } return context.GetValue(this.ListItemId); } }Any help is much appreciated!