Changeset 1419 for branches/New Persistence Exploration/Persistence/Persistence/Core/DataMemberAccessor.cs
- Timestamp:
- 03/25/09 17:16:32 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/New Persistence Exploration/Persistence/Persistence/Core/DataMemberAccessor.cs
r1360 r1419 12 12 public readonly Getter Get; 13 13 public readonly Setter Set; 14 public readonly string Name; 15 public readonly Type Type; 14 public readonly string Name; 16 15 public readonly object DefaultValue; 17 16 … … 23 22 FieldInfo fieldInfo = (FieldInfo)memberInfo; 24 23 Get = () => fieldInfo.GetValue(obj); 25 Set = value => fieldInfo.SetValue(obj, value); 26 Type = fieldInfo.FieldType; 24 Set = value => fieldInfo.SetValue(obj, value); 27 25 } else if (memberInfo.MemberType == MemberTypes.Property) { 28 26 PropertyInfo propertyInfo = (PropertyInfo)memberInfo; … … 32 30 } 33 31 Get = () => propertyInfo.GetValue(obj, null); 34 Set = value => propertyInfo.SetValue(obj, value, null); 35 Type = propertyInfo.PropertyType; 32 Set = value => propertyInfo.SetValue(obj, value, null); 36 33 } else { 37 34 throw new NotSupportedException( … … 43 40 44 41 public DataMemberAccessor( 45 string name, Type type,object defaultValue,42 string name, object defaultValue, 46 43 Getter getter, Setter setter) { 47 Name = name; 48 Type = type; 44 Name = name; 49 45 DefaultValue = defaultValue; 50 46 Get = getter; … … 53 49 54 50 public DataMemberAccessor(object o) { 55 Name = null; 56 Type = o.GetType(); 51 Name = null; 57 52 DefaultValue = null; 58 53 Get = () => o; … … 60 55 } 61 56 57 public DataMemberAccessor(object o, string name) { 58 Name = name; 59 DefaultValue = null; 60 Get = () => o; 61 Set = null; 62 } 63 64 62 65 public override string ToString() { 63 return String.Format("DataMember({0}, { 1}, {2}, {3}, {4})",66 return String.Format("DataMember({0}, {2}, {3}, {4})", 64 67 Name, 65 Type == null ? "<null>" : Type.FullName,66 68 DefaultValue ?? "<null>", 67 69 Get.Method, Set.Method);
Note: See TracChangeset
for help on using the changeset viewer.