2011-12-14 12 views
0

Visual Studio 2010でSharePoint 2010用のカスタムワークフローを作成しようとしていて、問題が発生しました。ワークフローをSharePointサイトに展開する方法を理解しましたが、実行するとエラーが発生します。しかし、エラーメッセージは完全に記述的ではないので、Visual Studioから実行する方法があるかどうかを調べて、失敗した箇所と場合によってはその理由を確認できます。Visual Studio 2010のSharePointリストワークフローのテスト

私は、特定のListItem.Title情報に基づいて新しいサブサイトを簡単に作成しようとしています。

どのようにデバッグするのですか?参考のため

は、ここに私のコードがある

class CreateSubsite : System.Workflow.ComponentModel.Activity 
{ 
    protected override System.Workflow.ComponentModel.ActivityExecutionStatus 
     Execute(System.Workflow.ComponentModel.ActivityExecutionContext executionContext) 
    { 
     createSite(); 
     return System.Workflow.ComponentModel.ActivityExecutionStatus.Closed; 
    } 

    public void createSite() 
    { 
     using (SPSite currentSite = SPContext.Current.Site) 
     { 
      using (SPWeb currentWeb = SPContext.Current.Web) 
      { 
       SPList currentList = SPContext.Current.List; 
       SPListItem currentListItem = SPContext.Current.ListItem; 

       WorkflowContext workflow = new WorkflowContext(); 
       SPSite parentSite = new SPSite(workflow.CurrentWebUrl); 

       SPWeb newSite = currentSite.AllWebs.Add(
        currentListItem.Title.Replace(" ", "_"), 
        currentListItem.Title, 
        String.Empty, currentWeb.Language, "CI Template", false, false 
       ); 
      } 
     } 
    } 
} 

答えて

0

そのオブジェクトを処分することは、実際に壊れる可能性があるので、あなたがSPContextを使用する場合。あなたがあなたのSPSiteとSPWebを設けるべきではない、あなたのコードからキーワードを使用して削除するようにしてください後で使用するためにそのオブジェクトへの参照が必要な場合があるため だけ よろしくを助ける

public void createSite() { 
     SPSite currentSite = SPContext.Current.Site 
     SPWeb currentWeb = SPContext.Current.Web 
     //.... Rest of your code 

希望を使用して使用せずに、あなたのコードを書き換えます。

+0

ありがとうございました!私はIntellitraceを発見しましたので、現在私は理解と使用に取り組んでいます。 – hrezs

+0

誰かがこの問題を抱えたら、ワークフローを展開し、サイトで有効にし、ワークフローを実行した後、「C:¥Program Files¥Common Files¥Microsoft Shared¥Web Server Extensions¥14」にあるログファイルを検索しました。ログ " また、ワークフロー内でSPContextを使用できないことも発見しました(nullを返し、ワークフローがエラーになる) ソース:[ここ](http://msdn.microsoft.com/en-us/library/microsoft) .sharepoint.spcontext.aspx) – hrezs

関連する問題