Fixed bugs

This commit is contained in:
2020-09-26 20:49:09 +02:00
parent b21781edde
commit 1811ea5a1a
7 changed files with 38 additions and 14 deletions

View File

@ -0,0 +1,13 @@
// ReSharper disable once CheckNamespace
namespace System.Collections.Generic
{
public static class KeyValueExtensions
{
public static void Deconstruct<TKey, TValue>(this KeyValuePair<TKey, TValue> keyValuePair, out TKey key,
out TValue value)
{
key = keyValuePair.Key;
value = keyValuePair.Value;
}
}
}

View File

@ -3,7 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using UserService.Infrastructure.DataModels;
namespace UserService.Infrastructure.DataModels
namespace UserService.Infrastructure
{
public static class NodeExtensions
{
@ -12,11 +12,13 @@ namespace UserService.Infrastructure.DataModels
if (member == null) throw new ArgumentNullException(nameof(member));
if (values == null) throw new ArgumentNullException(nameof(values));
var properties = member.GetType().GetProperties();
foreach (var keyValuePair in values)
foreach (var (key, value) in values)
{
var propertyInfo = properties.FirstOrDefault(x => x.Name == keyValuePair.Key);
var propertyInfo = properties.FirstOrDefault(x => x.Name == key);
if (propertyInfo == null) continue;
propertyInfo.SetValue(member, keyValuePair.Value);
var currentValue = propertyInfo.GetValue(member);
if(Equals(currentValue, value)) continue;
propertyInfo.SetValue(member, value);
}
}
}