SharePointワークフローアクティビティでフォルダーのGUIDを返すコードを記述して、ワークフロー変数に渡すことができるようにしたことはありますか?
コードサンプルをお持ちの場合は、ぜひご覧ください。
ありがとう
SharePointワークフローアクティビティでフォルダーのGUIDを返すコードを記述して、ワークフロー変数に渡すことができるようにしたことはありますか?
コードサンプルをお持ちの場合は、ぜひご覧ください。
ありがとう
私は似たようなことをしたことがあり、いくつかのヒントを提供できます。コード サンプルが見つからなかったので、Reflectorを使用して SharePoint の DLL からコードをコピーしました。
ファイル: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI\microsoft.sharepoint.WorkflowActions.dll クラス (例): Microsoft.SharePoint.WorkflowActions.WaitForActivity
次の3 つのプロパティとDependencyProperty
sがあります。
[Browsable(true), ValidationOption(ValidationOption.Required), DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
public WorkflowContext __Context
{
get { return (WorkflowContext)base.GetValue(__ContextProperty); }
set { base.SetValue(__ContextProperty, value); }
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible), Browsable(true), ValidationOption(ValidationOption.Required)]
public string __ListId
{
get { return (string)base.GetValue(__ListIdProperty); }
set { base.SetValue(__ListIdProperty, value); }
}
[Browsable(true), DesignerSerializationVisibility(DesignerSerializationVisibility.Visible), ValidationOption(ValidationOption.Required)]
public int __ListItem
{
get { return (int)base.GetValue(__ListItemProperty); }
set { base.SetValue(__ListItemProperty, value); }
}
public static DependencyProperty __ContextProperty;
public static DependencyProperty __ListIdProperty;
public static DependencyProperty __ListItemProperty;
そして、これは静的コンストラクターで:
static MyActivity()
{
__ContextProperty = DependencyProperty.Register("__Context", typeof(WorkflowContext), typeof(MyActivity));
__ListIdProperty = DependencyProperty.Register("__ListId", typeof(string), typeof(MyActivity));
__ListItemProperty = DependencyProperty.Register("__ListItem", typeof(int), typeof(MyActivity));
}
actions
それらをファイルにバインドします。
<Parameters>
<Parameter Name="__Context" Type="Microsoft.SharePoint.WorkflowActions.WorkflowContext, Microsoft.SharePoint.WorkflowActions" Direction="In"/>
<Parameter Name="__ListId" Type="System.String, mscorlib, mscorlib" Direction="In" />
<Parameter Name="__ListItem" Type="System.Int32, mscorlib, mscorlib" Direction="In" />
</Parameters>
これはファイルからコピーできます
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1033\Workflow\WSS.ACTIONS
次に、比較的簡単に GUID を取得し、プロパティと out パラメータ バインディングを使用してそれを返します。