FAQs
This topic includes some of the problems ArcGIS Runtime SDK for Windows Phone developers encounter in their developement, and solutions for those issues. They include the following problems:
- I cannot load data from my server.
- Tasks return a limited number of features.
- PrintTask returns an exception or does not generate output that matches the Map or Legend control
Problem: I cannot load data from my server
If you're unable to load data from your server, do the following:
- If accessing ArcGIS Server services, make sure that the ArcGIS Services Directory is set up and functioning. Navigate to http://<host>/arcgis/rest/services in a browser. See Discovering services for more information.
- Make sure the REST endpoint for the service is available. Copy and paste the URL defined in your application into a browser. For example: http://<host>/arcgis/rest/services/USA/MapServer.
- Use the InitializationFailure event on the layer to determine if an error is occurring, and interrogate the error message.
- View the HTTP request and response using a standard tool for interrogating HTTP communication. For example Fiddler, Silverlight Spy, FireBug (FireFox add-on), and so on, to determine if a failure has occurred.
Problem: Tasks return a limited number of features
By default, queries against ArcGIS Server 9.3.1 services are limited to returning 500 features and services in ArcGIS Server 10 and later are limited to 1000 features at a time. If you have access, the limit can be modified on the server. If not, iterate through consecutive blocks of results on the client by using the field that contains a unique key (for example, primary key) to track progress.
Problem: PrintTask returns an exception or does not generate output that matches the Map or Legend control
The PrintTask uses the ArcGIS Server 10.1 Export Web Map task to generate printable output that contains a map and optional surrrounds (such as a scale bar, legend, and so on). The following issues should be considered when preparing map contents for use with the PrintTask:
- To generate correct PictureFillSymbols ensure that the height and width are proportional to the original image.
- GraphicsLayers should not contain mixed geometries. If you need to print different geometries, put each geometry type in its own GraphicsLayer. For example, do not use a single GraphicsLayer that has both points and polygons; separate them into a point GraphicsLayer and a polygon GraphicsLayer.
- For FeatureLayers, if FeatureLayer.Mode = SelectionOnly, make sure to include the ObjectID in the FeatureLayer.Outfields; otherwise, all features in the FeatureLayer will display in the print output.
- FeatureLayers will only display Legend items that are viewable in the current Map extent. Legend items are dynamically generated by the PrintTask based upon the features that are currently viewable.
- To show a Legend, layers must have the Layer.ID Property defined. Generation of a Legend is supported on all Layout Template types except MAP_ONLY.
- Points symbolized using triangles in a FeatureLayer or ArcGISDynamicMapServiceLayer display as solid-fill circles.
- Custom symbols on the client are "downgraded" to simple symbols. Additionally, simple symbols that have a custom ControlTemplate applied on the client will also be downgraded. Downgraded symbols will be black in color, a solid fill circle for a point, a solid line for a polyline, or a solid fill for a polygon. Since ArcGIS Server and a client API use different graphics engines, ArcGIS Server is not capable of generating an exact match.
- Partial transparency defined using the Symbol.Color alpha (opacity) property for symbols in a ClassBreaksRenderer is ignored.
- PictureFillSymbols must be selected on the client to display correctly. If the PictureFillSymbols are not selected, only the outline displays.
- When the Map control contains a layer with a graphic/renderer symbol that has fill/color with alpha=0 and an output file is requested in PDF format, the graphic is drawn with a jagged edge (poor quality).
- The KML specification of 2.0 and 2.1 is currently supported but KML 2.2 is not. As a result, time animation, photo overlays, and schema tags will not generate appropriate output.
- HeatMap layers created on the client are not yet supported.
- Partial transparency set on a ClassBreaksAger for temporal layers is not applied correctly. Instead, the opacity is applied to the entire layer rather than individual graphic symbols. In addition, track lines appear on top of marker symbols.