XmlMemberMapping.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. //
  2. // System.Xml.Serialization.XmlMemberMapping
  3. //
  4. // Author:
  5. // Tim Coleman ([email protected])
  6. // Lluis Sanchez Gual ([email protected])
  7. //
  8. // Copyright (C) Tim Coleman, 2002
  9. //
  10. namespace System.Xml.Serialization
  11. {
  12. public class XmlMemberMapping {
  13. XmlTypeMapMember _mapMember;
  14. string _elementName;
  15. string _memberName;
  16. string _namespace;
  17. string _typeNamespace;
  18. internal XmlMemberMapping (XmlReflectionMember rmember, XmlTypeMapMember mapMem)
  19. {
  20. _mapMember = mapMem;
  21. _memberName = rmember.MemberName;
  22. if (mapMem is XmlTypeMapMemberElement)
  23. {
  24. XmlTypeMapElementInfo info = (XmlTypeMapElementInfo) ((XmlTypeMapMemberElement)mapMem).ElementInfo[0];
  25. _elementName = info.ElementName;
  26. _namespace = info.Namespace;
  27. if (info.MappedType != null) _typeNamespace = info.MappedType.Namespace;
  28. else _namespace = "";
  29. }
  30. else
  31. {
  32. _elementName = _memberName;
  33. _namespace = "";
  34. }
  35. if (_typeNamespace == null) _typeNamespace = _namespace;
  36. }
  37. #region Properties
  38. public bool Any {
  39. [MonoTODO]
  40. get { return false; }
  41. }
  42. public string ElementName {
  43. get { return _elementName; }
  44. }
  45. public string MemberName {
  46. get { return _memberName; }
  47. }
  48. public string Namespace {
  49. get { return _namespace; }
  50. }
  51. public string TypeFullName {
  52. get { return _mapMember.TypeData.FullTypeName; }
  53. }
  54. public string TypeName {
  55. get { return _mapMember.TypeData.XmlType; }
  56. }
  57. public string TypeNamespace {
  58. get { return _typeNamespace; }
  59. }
  60. internal XmlTypeMapMember TypeMapMember {
  61. get { return _mapMember; }
  62. }
  63. #endregion // Properties
  64. }
  65. }