本文整理汇总了C#中Rock.Model.PersonAliasService.Add方法的典型用法代码示例。如果您正苦于以下问题:C# PersonAliasService.Add方法的具体用法?C# PersonAliasService.Add怎么用?C# PersonAliasService.Add使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Rock.Model.PersonAliasService
的用法示例。
在下文中一共展示了PersonAliasService.Add方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetEditValue
/// <summary>
/// Reads new values entered by the user for the field (as PersonAlias.Guid)
/// </summary>
/// <param name="control">Parent control that controls were added to in the CreateEditControl() method</param>
/// <param name="configurationValues">The configuration values.</param>
/// <returns></returns>
public override string GetEditValue( System.Web.UI.Control control, Dictionary<string, ConfigurationValue> configurationValues )
{
PersonPicker ppPerson = control as PersonPicker;
string result = null;
if ( ppPerson != null )
{
Guid personGuid = Guid.Empty;
int? personId = ppPerson.PersonId;
if ( personId.HasValue )
{
var rockContext = new RockContext();
var personAliasService = new PersonAliasService( rockContext );
var personAlias = personAliasService.Queryable()
.Where( a => a.AliasPersonId == personId )
.FirstOrDefault();
if ( personAlias != null )
{
result = personAlias.Guid.ToString();
}
else
{
// If the personId is valid, there should be a personAlias with the AliasPersonID equal
// to that personId. If there isn't for some reason, create it now...
var person = new PersonService( rockContext ).Get( personId.Value );
if ( person != null )
{
personAlias = new PersonAlias();
personAlias.Guid = Guid.NewGuid();
personAlias.AliasPersonId = person.Id;
personAlias.AliasPersonGuid = person.Guid;
personAlias.PersonId = person.Id;
result = personAlias.Guid.ToString();
personAliasService.Add( personAlias );
rockContext.SaveChanges();
}
}
}
}
return result;
}