EmployeeColumn.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Reflection;
  5. using System.Web;
  6. using System.Web.DynamicData;
  7. using MonoTests.DataSource;
  8. namespace MonoTests.DataObjects
  9. {
  10. public class EmployeeColumn : DynamicDataColumn
  11. {
  12. public EmployeeColumn (MemberInfo member)
  13. {
  14. if (member == null)
  15. throw new ArgumentNullException ("member");
  16. this.Name = member.Name;
  17. switch (member.MemberType) {
  18. case MemberTypes.Field:
  19. var fi = member as FieldInfo;
  20. this.DataType = fi.FieldType;
  21. break;
  22. case MemberTypes.Property:
  23. var pi = member as PropertyInfo;
  24. this.DataType = pi.PropertyType;
  25. break;
  26. default:
  27. throw new ArgumentException ("Member information must refer to either a field or a property.", "member");
  28. }
  29. }
  30. }
  31. }