private void initializeCodeActivity_InitBindings_ExecuteCode(object sender, EventArgs e) { IInlineFunction functionInfo = this.GetDataItemFromEntityToken<IInlineFunction>(); this.Bindings.Add("Function", functionInfo); this.Bindings.Add("PageId", PageManager.GetChildrenIDs(Guid.Empty).FirstOrDefault()); if (UserSettings.ActiveLocaleCultureInfo != null) { List<KeyValuePair<string, string>> activeCulturesDictionary = UserSettings.ActiveLocaleCultureInfos.Select(f => new KeyValuePair<string, string>(f.Name, DataLocalizationFacade.GetCultureTitle(f))).ToList(); this.Bindings.Add("ActiveCultureName", UserSettings.ActiveLocaleCultureInfo.Name); this.Bindings.Add("ActiveCulturesList", activeCulturesDictionary); } this.Bindings.Add("PageDataScopeName", DataScopeIdentifier.AdministratedName); this.Bindings.Add("PageDataScopeList", new Dictionary<string, string> { { DataScopeIdentifier.AdministratedName, GetText("EditInlineFunctionWorkflow.AdminitrativeScope.Label") }, { DataScopeIdentifier.PublicName, GetText("EditInlineFunctionWorkflow.PublicScope.Label") } }); this.Bindings.Add("FunctionCode", functionInfo.GetFunctionCode()); List<KeyValuePair> assemblies = new List<KeyValuePair>(); foreach (string assembly in InlineFunctionHelper.GetReferencableAssemblies()) { assemblies.Add(new KeyValuePair(assembly.ToLowerInvariant(), System.IO.Path.GetFileName(assembly))); } assemblies.Sort(delegate(KeyValuePair kvp1, KeyValuePair kvp2) { return kvp1.Value.CompareTo(kvp2.Value); }); this.Bindings.Add("Assemblies", assemblies); List<string> selectedAssemblies = DataFacade.GetData<IInlineFunctionAssemblyReference>(). Where(f => f.Function == functionInfo.Id). OrderBy(f => f.Name). Evaluate(). Select(f => InlineFunctionHelper.GetAssemblyFullPath(f.Name, f.Location).ToLowerInvariant()). ToList(); this.Bindings.Add("SelectedAssemblies", selectedAssemblies); List<ManagedParameterDefinition> parameters = ManagedParameterManager.Load(functionInfo.Id).ToList(); ; this.Bindings.Add("Parameters", parameters); IEnumerable<Type> popularWidgetTypes = FunctionFacade.WidgetFunctionSupportedTypes.Where(f => f.GetGenericArguments().Any(g => DataFacade.GetAllInterfaces(UserType.Developer).Any(h => h.IsAssignableFrom(g)))); List<Type> parameterTypeOptions = FunctionFacade.FunctionSupportedTypes.Union(popularWidgetTypes).Union(FunctionFacade.WidgetFunctionSupportedTypes).ToList(); this.Bindings.Add("ParameterTypeOptions", parameterTypeOptions); Guid stateId = Guid.NewGuid(); ParameterEditorState parameterEditorState = new ParameterEditorState { WorkflowId = WorkflowInstanceId }; SessionStateManager.DefaultProvider.AddState<IParameterEditorState>(stateId, parameterEditorState, DateTime.Now.AddDays(7.0)); this.Bindings.Add("SessionStateProvider", SessionStateManager.DefaultProviderName); this.Bindings.Add("SessionStateId", stateId); }
private void initializeCodeActivity_InitBindings_ExecuteCode(object sender, EventArgs e) { IInlineFunction functionInfo = this.GetDataItemFromEntityToken <IInlineFunction>(); this.Bindings.Add("Function", functionInfo); this.Bindings.Add("PageId", PageManager.GetChildrenIDs(Guid.Empty).FirstOrDefault()); if (UserSettings.ActiveLocaleCultureInfo != null) { List <KeyValuePair <string, string> > activeCulturesDictionary = UserSettings.ActiveLocaleCultureInfos.Select(f => new KeyValuePair <string, string>(f.Name, DataLocalizationFacade.GetCultureTitle(f))).ToList(); this.Bindings.Add("ActiveCultureName", UserSettings.ActiveLocaleCultureInfo.Name); this.Bindings.Add("ActiveCulturesList", activeCulturesDictionary); } this.Bindings.Add("PageDataScopeName", DataScopeIdentifier.AdministratedName); this.Bindings.Add("PageDataScopeList", new Dictionary <string, string> { { DataScopeIdentifier.AdministratedName, GetText("EditInlineFunctionWorkflow.AdminitrativeScope.Label") }, { DataScopeIdentifier.PublicName, GetText("EditInlineFunctionWorkflow.PublicScope.Label") } }); this.Bindings.Add("FunctionCode", functionInfo.GetFunctionCode()); List <KeyValuePair> assemblies = new List <KeyValuePair>(); foreach (string assembly in InlineFunctionHelper.GetReferencableAssemblies()) { assemblies.Add(new KeyValuePair(assembly.ToLowerInvariant(), System.IO.Path.GetFileName(assembly))); } assemblies.Sort(delegate(KeyValuePair kvp1, KeyValuePair kvp2) { return(kvp1.Value.CompareTo(kvp2.Value)); }); this.Bindings.Add("Assemblies", assemblies); List <string> selectedAssemblies = DataFacade.GetData <IInlineFunctionAssemblyReference>(). Where(f => f.Function == functionInfo.Id). OrderBy(f => f.Name). Evaluate(). Select(f => InlineFunctionHelper.GetAssemblyFullPath(f.Name, f.Location).ToLowerInvariant()). ToList(); this.Bindings.Add("SelectedAssemblies", selectedAssemblies); List <ManagedParameterDefinition> parameters = ManagedParameterManager.Load(functionInfo.Id).ToList();; this.Bindings.Add("Parameters", parameters); IEnumerable <Type> popularWidgetTypes = FunctionFacade.WidgetFunctionSupportedTypes.Where(f => f.GetGenericArguments().Any(g => DataFacade.GetAllInterfaces(UserType.Developer).Any(h => h.IsAssignableFrom(g)))); List <Type> parameterTypeOptions = FunctionFacade.FunctionSupportedTypes.Union(popularWidgetTypes).Union(FunctionFacade.WidgetFunctionSupportedTypes).ToList(); this.Bindings.Add("ParameterTypeOptions", parameterTypeOptions); Guid stateId = Guid.NewGuid(); ParameterEditorState parameterEditorState = new ParameterEditorState { WorkflowId = WorkflowInstanceId }; SessionStateManager.DefaultProvider.AddState <IParameterEditorState>(stateId, parameterEditorState, DateTime.Now.AddDays(7.0)); this.Bindings.Add("SessionStateProvider", SessionStateManager.DefaultProviderName); this.Bindings.Add("SessionStateId", stateId); }