本文整理汇总了C#中Rock.Model.AttributeService.Clone方法的典型用法代码示例。如果您正苦于以下问题:C# AttributeService.Clone方法的具体用法?C# AttributeService.Clone怎么用?C# AttributeService.Clone使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Rock.Model.AttributeService
的用法示例。
在下文中一共展示了AttributeService.Clone方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: dlgField_SaveClick
/// <summary>
/// Handles the SaveClick event of the dlgField 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 dlgField_SaveClick( object sender, EventArgs e )
{
var formGuid = hfFormGuid.Value.AsGuid();
var attributeGuid = hfAttributeGuid.Value.AsGuid();
if ( FormFieldsState.ContainsKey( formGuid ) )
{
var attributeForm = FormFieldsState[formGuid].FirstOrDefault( a => a.Guid.Equals( attributeGuid ) );
if ( attributeForm == null )
{
attributeForm = new RegistrationTemplateFormField();
attributeForm.Order = FormFieldsState[formGuid].Any() ? FormFieldsState[formGuid].Max( a => a.Order ) + 1 : 0;
attributeForm.Guid = attributeGuid;
FormFieldsState[formGuid].Add( attributeForm );
}
attributeForm.PreText = ceAttributePreText.Text;
attributeForm.PostText = ceAttributePostText.Text;
attributeForm.FieldSource = ddlFieldSource.SelectedValueAsEnum<RegistrationFieldSource>();
if ( ddlPersonField.Visible )
{
attributeForm.PersonFieldType = ddlPersonField.SelectedValueAsEnum<RegistrationPersonFieldType>();
}
attributeForm.IsInternal = cbInternalField.Checked;
attributeForm.IsSharedValue = cbCommonValue.Checked;
int? attributeId = null;
switch ( attributeForm.FieldSource )
{
case RegistrationFieldSource.PersonField:
{
attributeForm.ShowCurrentValue = cbUsePersonCurrentValue.Checked;
attributeForm.IsGridField = cbShowOnGrid.Checked;
attributeForm.IsRequired = cbRequireInInitialEntry.Checked;
break;
}
case RegistrationFieldSource.PersonAttribute:
{
attributeId = ddlPersonAttributes.SelectedValueAsInt();
attributeForm.ShowCurrentValue = cbUsePersonCurrentValue.Checked;
attributeForm.IsGridField = cbShowOnGrid.Checked;
attributeForm.IsRequired = cbRequireInInitialEntry.Checked;
break;
}
case RegistrationFieldSource.GroupMemberAttribute:
{
attributeId = ddlGroupTypeAttributes.SelectedValueAsInt();
attributeForm.ShowCurrentValue = false;
attributeForm.IsGridField = cbShowOnGrid.Checked;
attributeForm.IsRequired = cbRequireInInitialEntry.Checked;
break;
}
case RegistrationFieldSource.RegistrationAttribute:
{
Rock.Model.Attribute attribute = new Rock.Model.Attribute();
edtRegistrationAttribute.GetAttributeProperties( attribute );
attributeForm.Attribute = attribute;
attributeForm.Id = attribute.Id;
attributeForm.ShowCurrentValue = false;
attributeForm.IsGridField = attribute.IsGridColumn;
attributeForm.IsRequired = attribute.IsRequired;
break;
}
}
if ( attributeId.HasValue )
{
using ( var rockContext = new RockContext() )
{
var attribute = new AttributeService( rockContext ).Get( attributeId.Value );
if ( attribute != null )
{
attributeForm.Attribute = attribute.Clone( false );
attributeForm.Attribute.FieldType = attribute.FieldType.Clone( false );
attributeForm.AttributeId = attribute.Id;
}
}
}
}
HideDialog();
BuildControls( true );
}