Add foundation

This commit is contained in:
TheXamlGuy
2024-04-13 11:29:32 +01:00
parent 6f31aa8513
commit 053d8a851e
264 changed files with 3428 additions and 4683 deletions
+32
View File
@@ -0,0 +1,32 @@
using System.Reflection;
namespace Toolkit.Foundation;
public static class ObjectExtensions
{
public static object? GetPropertyValue(this object obj, Func<object> selector)
{
Type type = obj.GetType();
object? key = selector();
if (type.GetProperty($"{key}") is PropertyInfo property
&& property.GetValue(obj) is { } value)
{
return value;
}
return null;
}
public static TAttribute? GetAttribute<TAttribute>(this object obj)
where TAttribute : Attribute
{
Type type = obj.GetType();
if (type.GetAttribute<TAttribute>() is TAttribute attribute)
{
return attribute;
}
return null;
}
}