示例#1
0
        public static CppType FromParticle(ProxyWriter pw, MSXML2.ISchemaParticle p)
        {
            MSXML2.ISchemaElement e     = p as MSXML2.ISchemaElement;
            wsdlParser.qname      ptype = new wsdlParser.qnameClass();
            ptype.localname  = e.type.name;
            ptype.@namespace = e.type.namespaceURI;
            CppType itemType  = pw.mapType(ptype);
            int     minOccurs = int.Parse(p.minOccurs.ToString());
            int     maxOccurs = int.Parse(p.maxOccurs.ToString());

            if ((maxOccurs == 1) && (minOccurs == 0))
            {
                itemType.Optional = true;
            }
            else if ((maxOccurs != 1) || (minOccurs != 1))
            {
                itemType.Array = ArrayType.Literal;
            }
            else if (e != null && e.isNillable)
            {
                itemType.Optional = true;
            }

            return(itemType);
        }
示例#2
0
 public void StartProxy(wsdlParser.port port, wsdlParser.binding binding, wsdlParser.portType portType)
 {
     m_currentproxy = new ProxyWriter(m_wsdlUrl, m_wsdl, port, binding, portType, m_project);
 }