⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reflectionhelper.cs

📁 破解的飞信源代码
💻 CS
字号:
namespace Imps.Utils
{
    using System;
    using System.Reflection;

    public static class ReflectionHelper
    {
        public static void ClearAllEvents(object objectHasEvents)
        {
            if (objectHasEvents != null)
            {
                EventInfo[] events = objectHasEvents.GetType().GetEvents(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
                if ((events != null) && (events.Length >= 1))
                {
                    for (int i = 0; i < events.Length; i++)
                    {
                        try
                        {
                            EventInfo info = events[i];
                            FieldInfo field = info.DeclaringType.GetField(info.Name, BindingFlags.NonPublic | BindingFlags.Instance);
                            if (field != null)
                            {
                                field.SetValue(objectHasEvents, null);
                            }
                        }
                        catch
                        {
                        }
                    }
                }
            }
        }

        public static T GetDefaultValue<T>()
        {
            T objA = default(T);
            if (object.Equals(objA, null))
            {
                Type type = typeof(T);
                FieldInfo field = type.GetField("Empty", BindingFlags.GetField | BindingFlags.Public | BindingFlags.Static);
                if ((field != null) && (field.FieldType == type))
                {
                    return (T) field.GetValue(null);
                }
                ConstructorInfo constructor = type.GetConstructor(Type.EmptyTypes);
                if (constructor != null)
                {
                    objA = (T) constructor.Invoke(null);
                }
            }
            return objA;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -