CreateTaskWithContentType Class
Defines a workflow activity that is used to create a task item in a Microsoft SharePoint Foundation 2010 task list, using a specified SharePoint Foundation 2010 content type.
Inheritance Hierarchy
System.Object
System.Workflow.ComponentModel.DependencyObject
System.Workflow.ComponentModel.Activity
System.Workflow.Activities.CallExternalMethodActivity
Microsoft.SharePoint.WorkflowActions.CreateTaskWithContentType
Namespace: Microsoft.SharePoint.WorkflowActions
Assembly: Microsoft.SharePoint.WorkflowActions (in Microsoft.SharePoint.WorkflowActions.dll)
Syntax
'Declaration
<ToolboxBitmapAttribute(GetType(CreateTaskWithContentType), "Resources.CreateTaskWithContentType.bmp")> _
<ActivityToolboxDisplayAttribute("VSTTSharePointWorkflowTask", True)> _
Public NotInheritable Class CreateTaskWithContentType _
Inherits CallExternalMethodActivity
'Usage
Dim instance As CreateTaskWithContentType
[ToolboxBitmapAttribute(typeof(CreateTaskWithContentType), "Resources.CreateTaskWithContentType.bmp")]
[ActivityToolboxDisplayAttribute("VSTTSharePointWorkflowTask", true)]
public sealed class CreateTaskWithContentType : CallExternalMethodActivity
Remarks
You must ensure that content types are enabled on the SharePoint Foundation task list where you are creating the task list items. If they are not enabled on this list, the activity will throw a a null reference (Nothing in Visual Basic) reference exception.
Examples
The following code sample was contributed by Robert Bogue, one of the SharePoint Foundation MVPs. Get to know your SharePoint Foundation MVPs on this Web site. |
The following code sample updates a content type.
public static void VerifyModifyTaskList(SPList taskList, string contentType)
{
try
{
SPContentTypeId contentTypeId = new
SPContentTypeId(contentType);
taskList.ContentTypesEnabled = true;
SPContentTypeId matchContentTypeId = taskList.ContentTypes.BestMatch(contentTypeId);
if (matchContentTypeId.Parent.CompareTo(contentTypeId) != 0)
{
SPContentType ct = taskList.ParentWeb.AvailableContentTypes[contentTypeId];
taskList.ContentTypes.Add(ct);
taskList.Update();
}
}
catch
{
throw;
}
}
Public Shared Sub VerifyModifyTaskList(ByVal taskList As SPList, ByVal contentType As String)
Try
Dim contentTypeId As New SPContentTypeId(contentType)
taskList.ContentTypesEnabled = True
Dim matchContentTypeId As SPContentTypeId = taskList.ContentTypes.BestMatch(contentTypeId)
If matchContentTypeId.Parent.CompareTo(contentTypeId) <> 0 Then
Dim ct As SPContentType = taskList.ParentWeb.AvailableContentTypes(contentTypeId)
taskList.ContentTypes.Add(ct)
taskList.Update()
End If
Catch
Throw
End Try
End Sub
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.