| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 
							- namespace Universal;
 
- public class Property(string name, Type type, object? value)
 
- {
 
-     public string Name { get; } = name;
 
-     public Type TypeName { get; } = type;
 
-     public object Value { get; } = value ??= "NULL";
 
- }
 
- public class ReflectionHelper
 
- {
 
-     public static IEnumerable<Property> FromatDitits<T>(T model) where T : notnull
 
-     {
 
-         foreach (PropertyInfo propertyInfo in model.GetType().GetRuntimeProperties())
 
-             yield return new(propertyInfo.Name, propertyInfo.PropertyType, propertyInfo.GetValue(model));
 
-     }
 
-     public static Dictionary<string, object?>? GetProperties<T>(T t)
 
-     {
 
-         if (t == null)
 
-             return default;
 
-         PropertyInfo[] properties = t.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);
 
-         if (properties.Length <= 0)
 
-             return default;
 
-         Dictionary<string, object?> ListStr = [];
 
-         foreach (PropertyInfo item in properties)
 
-         {
 
-             string name = item.Name; //名称
 
-             object? value = item.GetValue(t, null);  //值
 
-             if (item.PropertyType.IsValueType || item.PropertyType.Name.StartsWith("String"))
 
-                 ListStr.Add(name, value);
 
-             else
 
-                 GetProperties(value);
 
-         }
 
-         return ListStr;
 
-     }
 
-     public static Dictionary<string, object?>? GetFields<T>(T t)
 
-     {
 
-         if (t == null)
 
-             return default;
 
-         FieldInfo[] fields = t.GetType().GetFields(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
 
-         if (fields.Length <= 0)
 
-             return default;
 
-         Dictionary<string, object?> ListStr = [];
 
-         foreach (FieldInfo item in fields)
 
-         {
 
-             string name = item.Name; //名称
 
-             object? value = item.GetValue(t);  //值
 
-             if (item.FieldType.IsValueType || item.FieldType.Name.StartsWith("String"))
 
-                 ListStr.Add(name, value);
 
-             else
 
-                 GetFields(value);
 
-         }
 
-         return ListStr;
 
-     }
 
- }
 
 
  |