Print Property Info
using System;
using System.Collections;
using System.Reflection;
public class MainClass{
public static void Main() {
Assembly LoadedAsm = Assembly.LoadFrom("yourName");
Console.WriteLine(LoadedAsm.FullName);
Type[] LoadedTypes = LoadedAsm.GetTypes();
if (LoadedTypes.Length == 0) {
Console.WriteLine("\tNo Types!");
} else {
foreach (Type t in LoadedTypes) {
if (t.IsPublic && !t.IsEnum && !t.IsValueType) {
Console.WriteLine("Type: {0}", t.FullName);
PrintPropertyInfo(t);
}
}
}
}
private static void PrintPropertyInfo(Type t) {
PropertyInfo[] props = t.GetProperties
(BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static);
foreach (PropertyInfo p in props) {
Console.WriteLine("Property: {0}", p.Name);
Console.WriteLine("\tType {0}", p.PropertyType.FullName);
if (p.CanRead)
Console.WriteLine("Readable property.");
if (p.CanWrite)
Console.WriteLine("Writable property.");
ParameterInfo[] pList = p.GetIndexParameters();
if (pList.Length == 0) {
Console.WriteLine("\tNo Parameters");
} else {
Console.WriteLine("\tParameter List:");
foreach (ParameterInfo parm in pList) {
Console.WriteLine("\t\t{0} {1}", parm.ParameterType.FullName,parm.Name);
}
}
}
}
}
Related examples in the same category
| 1. | Obtaining member information from a class. | | |
| 2. | Type.GetProperties | | |
| 3. | IsClass, Namespace, FullName, IsAbstract, IsPublic, IsInterface, IsEnum | | |
| 4. | Determines whether the member is an indexed property. | | |
| 5. | Determines whether the property is an indexed property. | | |
| 6. | Get Fields And Properties | | |
| 7. | Get Properties | | |
| 8. | Gets a property's value | | |
| 9. | Gets a property's type | | |
| 10. | Gets a property's parent object | | |
| 11. | Get Property from Property path | | |
| 12. | Copies a field value | | |
| 13. | Get the names of all the properties of an object | | |
| 14. | Determine if a property exists in an object | | |
| 15. | Get the type of the Property. | | |
| 16. | Set the value of a property that has been declared as an Enum type using reflection | | |
| 17. | Determine if a property's Type is an enum | | |
| 18. | Return true> if the specified property name identifies a readable property on the specified object; | | |
| 19. | Return true> if the specified property name identifies a writeable property on the specified object; | | |
| 20. | Integration Property To String | | |
| 21. | Gets the value of a static property on a specific type. | | |
| 22. | Gets the name of the property held within the expression | | |
| 23. | Gets the specified attribute from the PropertyDescriptor. | | |
| 24. | Get a property value given its name | | |
| 25. | Gets the attributes for this property. | | |
| 26. | Gets a value indicating whether the property can be read. | | |
| 27. | Gets a value indicating whether the property can be written to. | | |
| 28. | Returns an array whose elements reflect the public, non-public get, set, and other accessors | | |
| 29. | Returns the public or non-public get accessor for this property. | | |
| 30. | Get an array of all the index parameters for the property. | | |
| 31. | Get the set accessor for this property. | | |
| 32. | Returns the value of the property with optional index values for indexed properties. | | |
| 33. | Gets a MemberTypes value indicating that this member is a property. | | |
| 34. | Gets the type of this property. | | |
| 35. | Sets the property value for the given object to the given value. | | |
| 36. | Searches for the specified property, using the specified binding constraints. | | |
| 37. | Searches for the public property with the specified name and return type. | | |
| 38. | Get Non-Pubic Property | | |
| 39. | Set Non-Pubic Property | | |
| 40. | Gets a string with all of the properties that are not null. | | |
| 41. | Get Writable Properties | | |
| 42. | Get Property Name | | |