Mise à jour du code vers la version d'API SOAP

Mettez le code de la solution à jour pour pouvoir utiliser l'API SOAP/WSDL Spectrum Spatial pour les requêtes FeatureService, MappingService et GeocodingService au lieu de l'API .NET Envinsa.

  1. Remplacez la requête WithinBoundary du service de répertoire de l'API .NET Envinsa par la requête SearchBySQL du service de fonction de l'API SOAP/WSDL Spectrum Spatial.
    <SearchBySQLRequest:>
        <SQL>select Quality from "/CovLoc/3GIX" where MI_Point(-73.12345, 42.98765, 'epsg:4326') within obj</SQL>
  2. Remplacez PortrayMapRequest du service de présentation de l'API .NET Envinsa via la propriété LayerExtension pour exclure toutes les autres couches de couverture de la carte, sauf celle sélectionnée. Remplacez par les requêtes DescribeNamedMap et RenderMap du service de mapping de l'API SOAP/WSDL Spectrum Spatial pour obtenir une liste de couches de la carte nommée et la reconstruire sans aucune des autres couches de couverture de la carte, sauf celle sélectionnée.

    Exemple de page de démo SOAP Mapping Service  : afficher une carte avec FeatureLayer CustomRangeTheme :

    <S:Body>  
    		<v1:RenderMapRequest imageMimeType="image/png"  
    			returnImage="false">  
    			<v1:MapView xsi:type="v1:ZoomAndCenterMapView">  
    				<v1:Width>800.0</v1:Width>  
    				<v1:Height>600.0</v1:Height>  
    				<v1:ZoomLevel uom="Mile">3000.0</v1:ZoomLevel>  
    				<v1:MapCenter srsName="epsg:4269">  
    					<ns3:Pos>  
    						<ns3:X>-101</ns3:X>  
    						<ns3:Y>42</ns3:Y>  
    					</ns3:Pos>  
    				</v1:MapCenter>  
    			</v1:MapView>  
    			<v1:Map>  
    				<v1:Layer xsi:type="v1:FeatureLayer">  
    					<ns2:Table xsi:type="ns2:NamedTable" name="/Samples/NamedTables/USA" />  
    					<v1:ThemeList>  
    						<ns5:Theme xsi:type="ns5:CustomRangeTheme" expression="Pop_2000">  
    							<ns5:RangeBinList>  
    								<ns5:RangeBin>  
    									<ns5:UpperBound xsi:type="ns7:DoubleValue">  
    										<ns7:Value>20000000</ns7:Value>  
    									</ns5:UpperBound>  
    									<ns5:LowerBound xsi:type="ns7:DoubleValue">  
    										<ns7:Value>0</ns7:Value>  
    									</ns5:LowerBound>  
    									<ns6:Style xsi:type="ns6:NamedStyle" name="/Samples/NamedStyles/AreaStyleGreen" />  
    								</ns5:RangeBin>  
    								<ns5:RangeBin>  
    									<ns5:UpperBound xsi:type="ns7:DoubleValue">  
    										<ns7:Value>40000000</ns7:Value>  
    									</ns5:UpperBound>  
    									<ns5:LowerBound xsi:type="ns7:DoubleValue">  
    										<ns7:Value>0</ns7:Value>  
    									</ns5:LowerBound>  
    									<ns6:Style xsi:type="ns6:NamedStyle" name="/Samples/NamedStyles/AreaStyleRed" />  
    								</ns5:RangeBin>  
    							</ns5:RangeBinList>  
    							<ns5:AllOthers xsi:type="ns6:NamedStyle" name="/Samples/NamedStyles/AreaStyleBlue" />  
    						</ns5:Theme>  
    					</v1:ThemeList>  
    				</v1:Layer>  
    			</v1:Map>  
    		</v1:RenderMapRequest>  
    	</S:Body>  
  3. Remplacez GeocodeRequest du service LocationUtility de l'API .NET Envinsa par le service de requête GeocodeUSAddress de l'API SOAP/WSDL Spectrum.
    <GeocodeUSAddressRequest xmlns="http;//localhost:8080/services/GeocodeUSAddress">
    <context>
    	<account.id>admin</account.id>
    	<account.password>admin</account.password>
    </context>
    <optional/>
    <rows>
    	<row>
    		<AddressLine>400 Main St</AddressLine>
    		<City>Hamilton</City>
    		<StateProvince>KS</StateProvince>
    		<PostalCode>56789</PostalCode>
    	</row>
    </rows>
    </GeocodeUSAddressRequest>