Ejemplo n.º 1
0
		private CodeMemberField CreateMemberField (CodeTypeReference reference, string xmlName, XmlStructureType sType)
		{
			int i = 1;
			string clrName = xmlName;
			if (CodeMemberContains (clrName)) {
				while (CodeMemberContains (clrName + i))
					i++;
				clrName = clrName + i;
			}

			CodeMemberField cmf = new CodeMemberField (reference, clrName);
			cmf.Attributes = MemberAttributes.Public;

			switch (sType) {
			case XmlStructureType.Element:
				if (clrName != xmlName)
					cmf.CustomAttributes.Add (CreateXmlAttribute (typeof (XmlElementAttribute), xmlName));
				break;
			case XmlStructureType.Attribute:
				cmf.CustomAttributes.Add (CreateXmlAttribute (typeof (XmlAttributeAttribute), clrName != xmlName ? xmlName : null));
				break;
			case XmlStructureType.AnyAttribute:
				cmf.CustomAttributes.Add (CreateXmlAttribute (typeof (XmlAnyAttributeAttribute), null));
				reference.ArrayRank = 1;
				break;
			}

			return cmf;
		}
Ejemplo n.º 2
0
        private CodeMemberField CreateMemberField(CodeTypeReference reference, string xmlName, XmlStructureType sType)
        {
            int    i       = 1;
            string clrName = xmlName;

            if (CodeMemberContains(clrName))
            {
                while (CodeMemberContains(clrName + i))
                {
                    i++;
                }
                clrName = clrName + i;
            }

            CodeMemberField cmf = new CodeMemberField(reference, clrName);

            cmf.Attributes = MemberAttributes.Public;

            switch (sType)
            {
            case XmlStructureType.Element:
                if (clrName != xmlName)
                {
                    cmf.CustomAttributes.Add(CreateXmlAttribute(typeof(XmlElementAttribute), xmlName));
                }
                break;

            case XmlStructureType.Attribute:
                cmf.CustomAttributes.Add(CreateXmlAttribute(typeof(XmlAttributeAttribute), clrName != xmlName ? xmlName : null));
                break;

            case XmlStructureType.AnyAttribute:
                cmf.CustomAttributes.Add(CreateXmlAttribute(typeof(XmlAnyAttributeAttribute), null));
                reference.ArrayRank = 1;
                break;
            }

            return(cmf);
        }
Ejemplo n.º 3
0
		private CodeMemberField CreateMemberField (string typeName, string name, XmlStructureType sType)
		{
			return CreateMemberField (new CodeTypeReference (typeName), name, sType);
		}
Ejemplo n.º 4
0
 private CodeMemberField CreateMemberField(string typeName, string name, XmlStructureType sType)
 {
     return(CreateMemberField(new CodeTypeReference(typeName), name, sType));
 }