本文整理汇总了C#中WorkflowTypeService.Add方法的典型用法代码示例。如果您正苦于以下问题:C# WorkflowTypeService.Add方法的具体用法?C# WorkflowTypeService.Add怎么用?C# WorkflowTypeService.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorkflowTypeService
的用法示例。
在下文中一共展示了WorkflowTypeService.Add方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: btnSave_Click
/// <summary>
/// Handles the Click event of the btnSave control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
protected void btnSave_Click( object sender, EventArgs e )
{
var rockContext = new RockContext();
WorkflowType workflowType;
WorkflowTypeService service = new WorkflowTypeService( rockContext );
int workflowTypeId = int.Parse( hfWorkflowTypeId.Value );
if ( workflowTypeId == 0 )
{
workflowType = new WorkflowType();
workflowType.IsSystem = false;
workflowType.Name = string.Empty;
}
else
{
workflowType = service.Get( workflowTypeId );
}
workflowType.Name = tbName.Text;
workflowType.Description = tbDescription.Text;
workflowType.CategoryId = cpCategory.SelectedValueAsInt();
workflowType.Order = 0;
workflowType.WorkTerm = tbWorkTerm.Text;
if ( !string.IsNullOrWhiteSpace( tbProcessingInterval.Text ) )
{
workflowType.ProcessingIntervalSeconds = int.Parse( tbProcessingInterval.Text );
}
workflowType.IsPersisted = cbIsPersisted.Checked;
workflowType.LoggingLevel = ddlLoggingLevel.SelectedValueAsEnum<WorkflowLoggingLevel>();
workflowType.IsActive = cbIsActive.Checked;
if ( !Page.IsValid )
{
return;
}
if ( !workflowType.IsValid )
{
// Controls will render the error messages
return;
}
RockTransactionScope.WrapTransaction( () =>
{
// Save the entity field changes to workflow type
if ( workflowType.Id.Equals( 0 ) )
{
service.Add( workflowType );
}
rockContext.SaveChanges();
// Save the attributes
SaveAttributes( new Workflow().TypeId, "WorkflowTypeId", workflowType.Id.ToString(), AttributesState, rockContext );
WorkflowActivityTypeService workflowActivityTypeService = new WorkflowActivityTypeService( rockContext );
WorkflowActionTypeService workflowActionTypeService = new WorkflowActionTypeService( rockContext );
WorkflowActionFormService workflowFormService = new WorkflowActionFormService( rockContext );
WorkflowActionFormAttributeService workflowFormAttributeService = new WorkflowActionFormAttributeService( rockContext );
// delete WorkflowActionTypes that aren't assigned in the UI anymore
List<WorkflowActivityEditor> workflowActivityTypeEditorList = phActivities.Controls.OfType<WorkflowActivityEditor>().ToList();
List<WorkflowActionType> actionTypesInDB = workflowActionTypeService.Queryable().Where( a => a.ActivityType.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
List<WorkflowActionType> actionTypesInUI = new List<WorkflowActionType>();
foreach ( WorkflowActivityEditor workflowActivityTypeEditor in workflowActivityTypeEditorList )
{
foreach ( WorkflowActionEditor editor in workflowActivityTypeEditor.Controls.OfType<WorkflowActionEditor>() )
{
actionTypesInUI.Add( editor.WorkflowActionType );
}
}
var deletedActionTypes = from actionType in actionTypesInDB
where !actionTypesInUI.Select( u => u.Guid ).Contains( actionType.Guid )
select actionType;
deletedActionTypes.ToList().ForEach( actionType =>
{
if (actionType.WorkflowForm != null)
{
workflowFormService.Delete( actionType.WorkflowForm );
}
workflowActionTypeService.Delete( actionType );
} );
rockContext.SaveChanges();
// delete WorkflowActivityTypes that aren't assigned in the UI anymore
List<WorkflowActivityType> activityTypesInDB = workflowActivityTypeService.Queryable().Where( a => a.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
List<WorkflowActivityType> activityTypesInUI = workflowActivityTypeEditorList.Select( a => a.GetWorkflowActivityType() ).ToList();
var deletedActivityTypes = from activityType in activityTypesInDB
where !activityTypesInUI.Select( u => u.Guid ).Contains( activityType.Guid )
select activityType;
deletedActivityTypes.ToList().ForEach( activityType =>
{
workflowActivityTypeService.Delete( activityType );
//.........这里部分代码省略.........
示例2: btnSave_Click
/// <summary>
/// Handles the Click event of the btnSave control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
protected void btnSave_Click( object sender, EventArgs e )
{
ParseControls( true );
var rockContext = new RockContext();
var service = new WorkflowTypeService( rockContext );
WorkflowType workflowType = null;
int? workflowTypeId = hfWorkflowTypeId.Value.AsIntegerOrNull();
if ( workflowTypeId.HasValue )
{
workflowType = service.Get( workflowTypeId.Value );
}
if ( workflowType == null )
{
workflowType = new WorkflowType();
}
workflowType.IsActive = cbIsActive.Checked;
workflowType.Name = tbName.Text;
workflowType.Description = tbDescription.Text;
workflowType.CategoryId = cpCategory.SelectedValueAsInt();
workflowType.Order = 0;
workflowType.WorkTerm = tbWorkTerm.Text;
workflowType.ProcessingIntervalSeconds = tbProcessingInterval.Text.AsIntegerOrNull();
workflowType.IsPersisted = cbIsPersisted.Checked;
workflowType.LoggingLevel = ddlLoggingLevel.SelectedValueAsEnum<WorkflowLoggingLevel>();
workflowType.IconCssClass = tbIconCssClass.Text;
if ( !Page.IsValid || !workflowType.IsValid )
{
return;
}
foreach(var activityType in ActivityTypesState)
{
if (!activityType.IsValid)
{
return;
}
foreach(var actionType in activityType.ActionTypes)
{
if ( !actionType.IsValid )
{
return;
}
}
}
rockContext.WrapTransaction( () =>
{
// Save the entity field changes to workflow type
if ( workflowType.Id.Equals( 0 ) )
{
service.Add( workflowType );
}
rockContext.SaveChanges();
// Save the workflow type attributes
SaveAttributes( new Workflow().TypeId, "WorkflowTypeId", workflowType.Id.ToString(), AttributesState, rockContext );
WorkflowActivityTypeService workflowActivityTypeService = new WorkflowActivityTypeService( rockContext );
WorkflowActionTypeService workflowActionTypeService = new WorkflowActionTypeService( rockContext );
WorkflowActionFormService workflowFormService = new WorkflowActionFormService( rockContext );
WorkflowActionFormAttributeService workflowFormAttributeService = new WorkflowActionFormAttributeService( rockContext );
// delete WorkflowActionTypes that aren't assigned in the UI anymore
List<WorkflowActionType> actionTypesInDB = workflowActionTypeService.Queryable().Where( a => a.ActivityType.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
List<WorkflowActionType> actionTypesInUI = new List<WorkflowActionType>();
foreach ( var workflowActivity in ActivityTypesState )
{
foreach ( var workflowAction in workflowActivity.ActionTypes )
{
actionTypesInUI.Add( workflowAction );
}
}
var deletedActionTypes = from actionType in actionTypesInDB
where !actionTypesInUI.Select( u => u.Guid ).Contains( actionType.Guid )
select actionType;
deletedActionTypes.ToList().ForEach( actionType =>
{
if ( actionType.WorkflowForm != null )
{
workflowFormService.Delete( actionType.WorkflowForm );
}
workflowActionTypeService.Delete( actionType );
} );
rockContext.SaveChanges();
// delete WorkflowActivityTypes that aren't assigned in the UI anymore
List<WorkflowActivityType> activityTypesInDB = workflowActivityTypeService.Queryable().Where( a => a.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
//.........这里部分代码省略.........
示例3: btnSave_Click
/// <summary>
/// Handles the Click event of the btnSave control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
protected void btnSave_Click( object sender, EventArgs e )
{
ParseControls( true );
var rockContext = new RockContext();
var service = new WorkflowTypeService( rockContext );
WorkflowType workflowType = null;
int? workflowTypeId = hfWorkflowTypeId.Value.AsIntegerOrNull();
if ( workflowTypeId.HasValue )
{
workflowType = service.Get( workflowTypeId.Value );
}
if ( workflowType == null )
{
workflowType = new WorkflowType();
}
var validationErrors = new List<string>();
// check for unique prefix
string prefix = tbNumberPrefix.UntrimmedText;
if ( !string.IsNullOrWhiteSpace( prefix ) &&
prefix.ToUpper() != ( workflowType.WorkflowIdPrefix ?? string.Empty ).ToUpper() )
{
if ( service.Queryable().AsNoTracking()
.Any( w =>
w.Id != workflowType.Id &&
w.WorkflowIdPrefix == prefix ) )
{
validationErrors.Add( "Workflow Number Prefix is already being used by another workflow type. Please use a unique prefix." );
}
else
{
workflowType.WorkflowIdPrefix = prefix;
}
}
else
{
workflowType.WorkflowIdPrefix = prefix;
}
workflowType.IsActive = cbIsActive.Checked;
workflowType.Name = tbName.Text;
workflowType.Description = tbDescription.Text;
workflowType.CategoryId = cpCategory.SelectedValueAsInt();
workflowType.WorkTerm = tbWorkTerm.Text;
workflowType.ModifiedByPersonAliasId = CurrentPersonAliasId;
workflowType.ModifiedDateTime = RockDateTime.Now;
int? mins = tbProcessingInterval.Text.AsIntegerOrNull();
if ( mins.HasValue )
{
workflowType.ProcessingIntervalSeconds = mins.Value * 60;
}
else
{
workflowType.ProcessingIntervalSeconds = null;
}
workflowType.IsPersisted = cbIsPersisted.Checked;
workflowType.LoggingLevel = ddlLoggingLevel.SelectedValueAsEnum<WorkflowLoggingLevel>();
workflowType.IconCssClass = tbIconCssClass.Text;
workflowType.SummaryViewText = ceSummaryViewText.Text;
workflowType.NoActionMessage = ceNoActionMessage.Text;
if ( validationErrors.Any() )
{
nbValidationError.Text = string.Format( "Please Correct the Following<ul><li>{0}</li></ul>",
validationErrors.AsDelimited( "</li><li>" ) );
nbValidationError.Visible = true;
return;
}
if ( !Page.IsValid || !workflowType.IsValid )
{
return;
}
foreach(var activityType in ActivityTypesState)
{
if (!activityType.IsValid)
{
return;
}
foreach(var actionType in activityType.ActionTypes)
{
if ( !actionType.IsValid )
{
return;
}
}
//.........这里部分代码省略.........
示例4: btnSave_Click
/// <summary>
/// Handles the Click event of the btnSave control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
protected void btnSave_Click( object sender, EventArgs e )
{
WorkflowType workflowType;
WorkflowTypeService service = new WorkflowTypeService();
int workflowTypeId = int.Parse( hfWorkflowTypeId.Value );
if ( workflowTypeId == 0 )
{
workflowType = new WorkflowType();
workflowType.IsSystem = false;
workflowType.Name = string.Empty;
}
else
{
workflowType = service.Get( workflowTypeId );
}
workflowType.Name = tbName.Text;
workflowType.Description = tbDescription.Text;
workflowType.CategoryId = cpCategory.SelectedValueAsInt();
workflowType.Order = int.Parse( tbOrder.Text );
workflowType.WorkTerm = tbWorkTerm.Text;
if ( !string.IsNullOrWhiteSpace( tbProcessingInterval.Text ) )
{
workflowType.ProcessingIntervalSeconds = int.Parse( tbProcessingInterval.Text );
}
workflowType.IsPersisted = cbIsPersisted.Checked;
workflowType.LoggingLevel = ddlLoggingLevel.SelectedValueAsEnum<WorkflowLoggingLevel>();
workflowType.IsActive = cbIsActive.Checked;
if ( !Page.IsValid )
{
return;
}
if ( !workflowType.IsValid )
{
// Controls will render the error messages
return;
}
RockTransactionScope.WrapTransaction( () =>
{
List<WorkflowActivityTypeEditor> workflowActivityTypeEditorList = phActivities.Controls.OfType<WorkflowActivityTypeEditor>().ToList();
// delete WorkflowActionTypes that aren't assigned in the UI anymore
WorkflowActionTypeService workflowActionTypeService = new WorkflowActionTypeService();
List<WorkflowActionType> actionTypesInDB = workflowActionTypeService.Queryable().Where( a => a.ActivityType.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
List<WorkflowActionType> actionTypesInUI = new List<WorkflowActionType>();
foreach ( WorkflowActivityTypeEditor workflowActivityTypeEditor in workflowActivityTypeEditorList )
{
foreach ( WorkflowActionTypeEditor editor in workflowActivityTypeEditor.Controls.OfType<WorkflowActionTypeEditor>() )
{
actionTypesInUI.Add( editor.WorkflowActionType );
}
}
var deletedActionTypes = from actionType in actionTypesInDB
where !actionTypesInUI.Select( u => u.Guid ).Contains( actionType.Guid )
select actionType;
deletedActionTypes.ToList().ForEach( actionType =>
{
workflowActionTypeService.Delete( actionType, CurrentPersonId );
workflowActionTypeService.Save( actionType, CurrentPersonId );
} );
// delete WorkflowActivityTypes that aren't assigned in the UI anymore
WorkflowActivityTypeService workflowActivityTypeService = new WorkflowActivityTypeService();
List<WorkflowActivityType> activityTypesInDB = workflowActivityTypeService.Queryable().Where( a => a.WorkflowTypeId.Equals( workflowType.Id ) ).ToList();
List<WorkflowActivityType> activityTypesInUI = workflowActivityTypeEditorList.Select( a => a.GetWorkflowActivityType() ).ToList();
var deletedActivityTypes = from activityType in activityTypesInDB
where !activityTypesInUI.Select( u => u.Guid ).Contains( activityType.Guid )
select activityType;
deletedActivityTypes.ToList().ForEach( activityType =>
{
workflowActivityTypeService.Delete( activityType, CurrentPersonId );
workflowActivityTypeService.Save( activityType, CurrentPersonId );
} );
// add or update WorkflowActivityTypes(and Actions) that are assigned in the UI
int workflowActivityTypeOrder = 0;
foreach ( WorkflowActivityTypeEditor workflowActivityTypeEditor in workflowActivityTypeEditorList )
{
WorkflowActivityType editorWorkflowActivityType = workflowActivityTypeEditor.GetWorkflowActivityType();
WorkflowActivityType workflowActivityType = workflowType.ActivityTypes.FirstOrDefault( a => a.Guid.Equals( editorWorkflowActivityType.Guid ) );
if ( workflowActivityType == null )
{
workflowActivityType = editorWorkflowActivityType;
workflowType.ActivityTypes.Add( workflowActivityType );
//.........这里部分代码省略.........