private void Merge(SecuritySpecificationInfo securitySpecificationInfo, Expression<Func<ResourceSecurityInfo, object>> mergingDelegate)
{
var method = ((MethodCallExpression)mergingDelegate.Body).Method;
foreach (var claimType in securitySpecificationInfo)
{
if (!securitySpecificationInfo[claimType].Any())
{
method.Invoke(this, new object[] { claimType, null });
}
else
{
foreach (var claimValue in securitySpecificationInfo[claimType])
{
method.Invoke(this, new object[] { claimType, claimValue });
}
}
}
}
}