0

SPオブジェクトモデルを使用してリストからワークフローを削除することに興味があります。これどうやってするの?SharePoint 2010のSPオブジェクトモデルを使用してリストからワークフローを削除する

私は今日、Googleと大したことはありません!

+0

まあこのコードを試してみてくださいホープは、httpから逆方向に動作することができます-spscripts.com/2010/08/add-workflow-to-sharepoint-list-in-all.html興味深いAPI句は[SPList.WorkflowAssociations](http://msdn.microsoft.com/en-us/library)です。 /microsoft.sharepoint.splist.workflowassociations.aspx):-) –

答えて

1

OK。ここでは、ワークフローをリストから削除する関数を示します。 // GET:それは誰か:)


/// <summary> 
/// Removes the workflow. 
/// </summary> 
/// <param name="workflowName">Name of the workflow.</param> 
/// <param name="spList">The sp list.</param> 
private static void RemoveWorkflow(string workflowName, SPList spList) 
{ 
    SPWorkflowAssociation spWorkflowAssociation = 
     spList.WorkflowAssociations.Cast<SPWorkflowAssociation>() 
      .FirstOrDefault(workflowAssociation => workflowAssociation.Name.Equals(workflowName)); 

    if (spWorkflowAssociation != null) 
    { 
     spList.WorkflowAssociations.Remove(spWorkflowAssociation.Id); 
    } 

    spList.Update(); 
} 
0

が...私の終わりに取り組ん

using(SPSite oSite = new SPSite("http://localhost/")) 
    { 
     using(SPWeb oWeb = oSite.OpenWeb()) 
     { 
     SPList oList = oWeb.Lists["DocumentLib"]; 
     SPWorkflowAssociation objWorkflowAssociation = oList.WorkflowAssociations.Cast<SPWorkflowAssociation>().FirstOrDefault(workflowAssociation => workflowAssociation.Name.Equals("Approval Workflow")); 
     if (objWorkflowAssociation != null) 
     { 
      oList.WorkflowAssociations.Remove(objWorkflowAssociation.Id); 
     } 
     oList.Update(); 
     } 
    } 

その、

+0

これにより、ワークフローの関連付けが削除されますワークフローはまだワークフロー設定で非アクティブなワークフローとして表示されます。どのようにサイトから完全に削除しますか? – MrMVCMan