Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void Reflect(string assemblyName, string className)
- {
- var type = string.IsNullOrEmpty(assemblyName) ? Type.GetType(className) : (Assembly.LoadFile(assemblyName).GetType(className));
- var obj = Activator.CreateInstance(type);
- var propertyNames = type.GetProperties()
- .Where(x =>
- x.GetAccessors(true).Any(y => y.ReturnType == typeof(void))
- && x.GetAccessors(true).Any(y => y.ReturnType != typeof(void))
- && !x.GetCustomAttributes(false).Any(y => y is ObsoleteAttribute))
- .Select(x => x.Name)
- .ToArray();
- foreach (var propertyName in propertyNames)
- {
- var propertyValue = type.GetProperty(propertyName)?.GetValue(obj).ToString();
- Console.WriteLine($"{propertyName}: {propertyValue}");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement