Sakura.AspNetCore.Extensions/Sakura.AspNetCore.Mvc.PagedList/PagerItemOptions.cs
/// <summary>
///     Merge a <see cref="PagerItemOptions" /> into another base instace.
/// </summary>
/// <param name="baseOptions">The base instance to be merged.</param>
/// <param name="additionalOptions">
///     The additional instance, in which the non-null values will merge into the base
///     instance.
/// </param>
/// <returns>A new <see cref="PagerItemOptions" /> to represent as the merging result.</returns>
/// <remarks>This method will not change either <paramref name="baseOptions" /> or <paramref name="additionalOptions" />.</remarks>
Merge a  into another base instace.
Merge a into another base instace .
[Pure]
		[NotNull]
		public static PagerItemOptions Merge([CanBeNull] PagerItemOptions baseOptions,
			[CanBeNull] PagerItemOptions additionalOptions)
		{
			var result = baseOptions?.Clone() ?? new PagerItemOptions();
			if (additionalOptions == null)
				return result;
			result.Content = additionalOptions.Content ?? result.Content;
			result.Link = additionalOptions.Link ?? result.Link;
			result.ActiveMode = additionalOptions.ActiveMode ?? result.ActiveMode;
			result.InactiveBehavior = additionalOptions.InactiveBehavior ?? result.InactiveBehavior;
			foreach (var i in additionalOptions.AdditionalSettings)
				result.AdditionalSettings[i.Key] = i.Value;
			return result;
		}
[ Pure ] [ NotNull ] public static PagerItemOptions Merge ( [ CanBeNull ] PagerItemOptions baseOptions , [ CanBeNull ] PagerItemOptions additionalOptions ) { var result = baseOptions ? . Clone ( ) ?? new PagerItemOptions ( ) ; if ( additionalOptions == null ) return result ; result . Content = additionalOptions . Content ?? result . Content ; result . Link = additionalOptions . Link ?? result . Link ; result . ActiveMode = additionalOptions . ActiveMode ?? result . ActiveMode ; result . InactiveBehavior = additionalOptions . InactiveBehavior ?? result . InactiveBehavior ; foreach ( var i in additionalOptions . AdditionalSettings ) result . AdditionalSettings [ i . Key ] = i . Value ; return result ; }
Merge a  into another base instace.
Merge a into another base instace .
// If base options is not null, use its clone as base; otherwise, use a new empty item as base. // Return base item if no additional options are  // Merge attributes // Merge settings
A new  to represent as the merging result.
A new to represent as the merging result .
PagerItemOptions
[CanBeNull]
baseOptions
The base instance to be merged.
The base instance to be merged .
additionalOptions
The additional instance, in which the non-null values will merge into the base
instance.
The additional instance in which the non - null values will merge into the base instance .
remarks
This method will not change either  or .
This method will not change either or .