<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Geometry Service Attribute Retention in ArcGIS API for Silverlight Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313670#M8059</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; Try using the method overload that allows you to pass in the 3rd 'user token' parameter &amp;amp; pass the graphics layer as that object. In the handler for your ProjectCompleted event cast that back to a layer and apply the projected geometry to the graphics. Code below isn't tested &amp;amp; off the top of my head, but might help -&amp;nbsp;&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt; &lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .... some other code above sets MyMap, GLayer is a graphics layer on MyMap and gets the URL for a geometry service....

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (MyMap.SpatialReference.WKID != 4326)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GeometryService gserv = new GeometryService(Application.Current.Resources["GeometryURL"].ToString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectCompleted += gserv_ProjectCompleted;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectAsync(GLayer.Graphics, MyMap.SpatialReference, GLayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void gserv_ProjectCompleted(object sender, GraphicsEventArgs e)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //update rss layer with graphics reprojected to match the map
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GraphicsLayer GLayer = MyMap.Layers[(e.UserState as Layer).ID] as GraphicsLayer;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; GLayer.Graphics.Count(); i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GLayer.Graphics&lt;I&gt;.Geometry = e.Results&lt;I&gt;.Geometry;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt; &lt;BR /&gt; &lt;BR /&gt;Might want to test and make sure the order is maintained by checking an attribute that would easily identify if it's the correct graphic (e.g. name = 'New York' is not showing up in Texas...)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hey Terry, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the reply. I am not 100% following your suggestion. Maybe if I provide more info and a couple code snippets it will help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a queryTask that hits a view and grabs the most current position of a truck (Lat/Lon), the machine name, and user name. Because my data is in a State Plane coordinates I need to reproject the graphics.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="color:&amp;quot;#0000FF&amp;quot;;"&gt;private void QueryTask_ExecuteCompletedTruckGPS(object sender, ESRI.ArcGIS.Client.Tasks.QueryEventArgs args)&lt;BR /&gt; {&lt;BR /&gt; FeatureSet featureSet = args.FeatureSet;&lt;BR /&gt; GraphicsLayer graphicsLayer = MyMap.Layers["TruckGPS"] as GraphicsLayer;&lt;BR /&gt; graphicsLayer.ClearGraphics();&lt;BR /&gt; if (featureSet != null &amp;amp;&amp;amp; featureSet.Features.Count &amp;gt; 0)&lt;BR /&gt; {&lt;BR /&gt; foreach (ESRI.ArcGIS.Client.Graphic feature in featureSet.Features)&lt;BR /&gt; {&lt;BR /&gt; if ((feature.Attributes["LONGITUDE"] != null) &amp;amp;&amp;amp; (feature.Attributes["LATITUDE"] != null))&lt;BR /&gt; {&lt;BR /&gt; var Machine_Name = feature.Attributes["MACHINE_NAME"].ToString();&lt;BR /&gt; var User_Name = feature.Attributes["USER_NAME"].ToString();&lt;BR /&gt; double lon = Convert.ToDouble(feature.Attributes["LONGITUDE"]);&lt;BR /&gt; double lat = Convert.ToDouble(feature.Attributes["LATITUDE"]);&lt;BR /&gt;&lt;BR /&gt; feature.Geometry = new MapPoint(lon, lat, new SpatialReference(4326));&lt;BR /&gt; &lt;BR /&gt; feature.Symbol = LayoutRoot.Resources["TRUCK"] as ESRI.ArcGIS.Client.Symbols.Symbol;&lt;BR /&gt; graphicsLayer.Graphics.Add(feature);&lt;BR /&gt; }&lt;BR /&gt; }&lt;BR /&gt; { (MyMap.Layers["TruckGPS"] as GraphicsLayer).Refresh(); };&lt;BR /&gt; }&lt;BR /&gt; &lt;BR /&gt; // Call the Asynchronous Geometry.ProjectAsync Method. It will generate Graphics in the WKIS 102697 SpatialReference.&lt;BR /&gt; geometryService.ProjectAsync(graphicsLayer, new ESRI.ArcGIS.Client.Geometry.SpatialReference(102697));&lt;BR /&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="color:&amp;quot;#0000FF&amp;quot;;"&gt; void geometryService_ProjectCompleted(object sender, GraphicsEventArgs e)&lt;BR /&gt; {&lt;BR /&gt; // Executes when the GeometryService.ProjectAsync has completed. The e.Results parameters has the new Graphics&lt;BR /&gt; // Projected in the WKID 102697 SpatialReference.&lt;BR /&gt;&lt;BR /&gt; // Create a new GraphicsLayer for display in the WKID 102697 Spatial Reference.&lt;BR /&gt; ESRI.ArcGIS.Client.GraphicsLayer TruckGraphicsLayer_WKID_102697 = new ESRI.ArcGIS.Client.GraphicsLayer();&lt;BR /&gt; TruckGraphicsLayer_WKID_102697.ID = "TruckGraphicsLayer";&lt;BR /&gt;&lt;BR /&gt; // Loop through each Graphic that was returned.&lt;BR /&gt; foreach (ESRI.ArcGIS.Client.Graphic myGraphic in e.Results)&lt;BR /&gt; {&lt;BR /&gt; // Create a new MapPoint.&lt;BR /&gt; ESRI.ArcGIS.Client.Geometry.MapPoint myMapPoint_WKID_102697 = (ESRI.ArcGIS.Client.Geometry.MapPoint)myGraphic.Geometry;&lt;BR /&gt; &lt;BR /&gt; // Create a new Graphic, set its Geometry and Symbol and add it to the GraphicsLayer.&lt;BR /&gt; ESRI.ArcGIS.Client.Graphic myGraphic_WKID_102697 = new ESRI.ArcGIS.Client.Graphic();&lt;BR /&gt; myGraphic_WKID_102697.Geometry = myMapPoint_WKID_102697;&lt;BR /&gt; myGraphic_WKID_102697.Symbol = LayoutRoot.Resources["TRUCK"] as ESRI.ArcGIS.Client.Symbols.Symbol;&lt;BR /&gt; TruckGraphicsLayer_WKID_102697.Graphics.Add(myGraphic_WKID_102697);&lt;BR /&gt;&lt;BR /&gt; // Add the GraphicsLayer to the Map Control&lt;BR /&gt; MyMap.Layers.Add(TruckGraphicsLayer_WKID_102697);&lt;BR /&gt;&lt;BR /&gt; }&lt;BR /&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This code is working to create a new graphics layer and create the new map points. But I don't want to re-create the graphics I want to update the existing truck graphicsLayer coordinates. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I plugged in your code and did some testing I tried typing in my url but I was getting null reference exceptions on this line:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;GeometryService gserv = new GeometryService(Application.Current.Resources["GeometryURL"].ToString());&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I understand the suggestion you gave just not the execution. Thanks for your help.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 14:57:35 GMT</pubDate>
    <dc:creator>BrandonIves</dc:creator>
    <dc:date>2021-12-11T14:57:35Z</dc:date>
    <item>
      <title>Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313668#M8057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to re-project a graphics layer and I want a map tip to pop up for the graphics. I am calling this asynchronous method: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;// Call the Asynchronous Geometry.ProjectAsync Method. It will generate Graphics in the WKIS 102697 SpatialReference.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; geometryService.ProjectAsync(graphicsLayer, new ESRI.ArcGIS.Client.Geometry.SpatialReference(102697));&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The graphics I get back are missing the attributes I had before the method call. Is there a way to retain the original graphic's attributes for use with the new graphic's maptips?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Dec 2013 18:56:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313668#M8057</guid>
      <dc:creator>BrandonIves</dc:creator>
      <dc:date>2013-12-10T18:56:28Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313669#M8058</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Try using the method overload that allows you to pass in the 3rd 'user token' parameter &amp;amp; pass the graphics layer as that object.&amp;nbsp; In the handler for your ProjectCompleted event cast that back to a layer and apply the projected geometry to the graphics.&amp;nbsp; Code below isn't tested &amp;amp; off the top of my head, but might help&amp;nbsp; - &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .... some other code above sets MyMap, GLayer is a graphics layer on MyMap and gets the URL for a geometry service....&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (MyMap.SpatialReference.WKID != 4326) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GeometryService gserv = new GeometryService(Application.Current.Resources["GeometryURL"].ToString()); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectCompleted += gserv_ProjectCompleted; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectAsync(GLayer.Graphics, MyMap.SpatialReference, GLayer); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void gserv_ProjectCompleted(object sender, GraphicsEventArgs e) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //update rss layer with graphics reprojected to match the map &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GraphicsLayer GLayer = MyMap.Layers[(e.UserState as Layer).ID] as GraphicsLayer; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; GLayer.Graphics.Count(); i++) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GLayer.Graphics&lt;I&gt;.Geometry = e.Results&lt;I&gt;.Geometry; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Might want to test and make sure the order is maintained by checking an attribute that would easily identify if it's the correct graphic (e.g. name = 'New York' is not showing up in Texas...)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 02:16:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313669#M8058</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2013-12-11T02:16:41Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313670#M8059</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; Try using the method overload that allows you to pass in the 3rd 'user token' parameter &amp;amp; pass the graphics layer as that object. In the handler for your ProjectCompleted event cast that back to a layer and apply the projected geometry to the graphics. Code below isn't tested &amp;amp; off the top of my head, but might help -&amp;nbsp;&amp;nbsp; &lt;BR /&gt; &lt;BR /&gt; &lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .... some other code above sets MyMap, GLayer is a graphics layer on MyMap and gets the URL for a geometry service....

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (MyMap.SpatialReference.WKID != 4326)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GeometryService gserv = new GeometryService(Application.Current.Resources["GeometryURL"].ToString());
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectCompleted += gserv_ProjectCompleted;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gserv.ProjectAsync(GLayer.Graphics, MyMap.SpatialReference, GLayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void gserv_ProjectCompleted(object sender, GraphicsEventArgs e)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //update rss layer with graphics reprojected to match the map
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GraphicsLayer GLayer = MyMap.Layers[(e.UserState as Layer).ID] as GraphicsLayer;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; GLayer.Graphics.Count(); i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GLayer.Graphics&lt;I&gt;.Geometry = e.Results&lt;I&gt;.Geometry;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt; &lt;BR /&gt; &lt;BR /&gt;Might want to test and make sure the order is maintained by checking an attribute that would easily identify if it's the correct graphic (e.g. name = 'New York' is not showing up in Texas...)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hey Terry, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the reply. I am not 100% following your suggestion. Maybe if I provide more info and a couple code snippets it will help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a queryTask that hits a view and grabs the most current position of a truck (Lat/Lon), the machine name, and user name. Because my data is in a State Plane coordinates I need to reproject the graphics.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="color:&amp;quot;#0000FF&amp;quot;;"&gt;private void QueryTask_ExecuteCompletedTruckGPS(object sender, ESRI.ArcGIS.Client.Tasks.QueryEventArgs args)&lt;BR /&gt; {&lt;BR /&gt; FeatureSet featureSet = args.FeatureSet;&lt;BR /&gt; GraphicsLayer graphicsLayer = MyMap.Layers["TruckGPS"] as GraphicsLayer;&lt;BR /&gt; graphicsLayer.ClearGraphics();&lt;BR /&gt; if (featureSet != null &amp;amp;&amp;amp; featureSet.Features.Count &amp;gt; 0)&lt;BR /&gt; {&lt;BR /&gt; foreach (ESRI.ArcGIS.Client.Graphic feature in featureSet.Features)&lt;BR /&gt; {&lt;BR /&gt; if ((feature.Attributes["LONGITUDE"] != null) &amp;amp;&amp;amp; (feature.Attributes["LATITUDE"] != null))&lt;BR /&gt; {&lt;BR /&gt; var Machine_Name = feature.Attributes["MACHINE_NAME"].ToString();&lt;BR /&gt; var User_Name = feature.Attributes["USER_NAME"].ToString();&lt;BR /&gt; double lon = Convert.ToDouble(feature.Attributes["LONGITUDE"]);&lt;BR /&gt; double lat = Convert.ToDouble(feature.Attributes["LATITUDE"]);&lt;BR /&gt;&lt;BR /&gt; feature.Geometry = new MapPoint(lon, lat, new SpatialReference(4326));&lt;BR /&gt; &lt;BR /&gt; feature.Symbol = LayoutRoot.Resources["TRUCK"] as ESRI.ArcGIS.Client.Symbols.Symbol;&lt;BR /&gt; graphicsLayer.Graphics.Add(feature);&lt;BR /&gt; }&lt;BR /&gt; }&lt;BR /&gt; { (MyMap.Layers["TruckGPS"] as GraphicsLayer).Refresh(); };&lt;BR /&gt; }&lt;BR /&gt; &lt;BR /&gt; // Call the Asynchronous Geometry.ProjectAsync Method. It will generate Graphics in the WKIS 102697 SpatialReference.&lt;BR /&gt; geometryService.ProjectAsync(graphicsLayer, new ESRI.ArcGIS.Client.Geometry.SpatialReference(102697));&lt;BR /&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="color:&amp;quot;#0000FF&amp;quot;;"&gt; void geometryService_ProjectCompleted(object sender, GraphicsEventArgs e)&lt;BR /&gt; {&lt;BR /&gt; // Executes when the GeometryService.ProjectAsync has completed. The e.Results parameters has the new Graphics&lt;BR /&gt; // Projected in the WKID 102697 SpatialReference.&lt;BR /&gt;&lt;BR /&gt; // Create a new GraphicsLayer for display in the WKID 102697 Spatial Reference.&lt;BR /&gt; ESRI.ArcGIS.Client.GraphicsLayer TruckGraphicsLayer_WKID_102697 = new ESRI.ArcGIS.Client.GraphicsLayer();&lt;BR /&gt; TruckGraphicsLayer_WKID_102697.ID = "TruckGraphicsLayer";&lt;BR /&gt;&lt;BR /&gt; // Loop through each Graphic that was returned.&lt;BR /&gt; foreach (ESRI.ArcGIS.Client.Graphic myGraphic in e.Results)&lt;BR /&gt; {&lt;BR /&gt; // Create a new MapPoint.&lt;BR /&gt; ESRI.ArcGIS.Client.Geometry.MapPoint myMapPoint_WKID_102697 = (ESRI.ArcGIS.Client.Geometry.MapPoint)myGraphic.Geometry;&lt;BR /&gt; &lt;BR /&gt; // Create a new Graphic, set its Geometry and Symbol and add it to the GraphicsLayer.&lt;BR /&gt; ESRI.ArcGIS.Client.Graphic myGraphic_WKID_102697 = new ESRI.ArcGIS.Client.Graphic();&lt;BR /&gt; myGraphic_WKID_102697.Geometry = myMapPoint_WKID_102697;&lt;BR /&gt; myGraphic_WKID_102697.Symbol = LayoutRoot.Resources["TRUCK"] as ESRI.ArcGIS.Client.Symbols.Symbol;&lt;BR /&gt; TruckGraphicsLayer_WKID_102697.Graphics.Add(myGraphic_WKID_102697);&lt;BR /&gt;&lt;BR /&gt; // Add the GraphicsLayer to the Map Control&lt;BR /&gt; MyMap.Layers.Add(TruckGraphicsLayer_WKID_102697);&lt;BR /&gt;&lt;BR /&gt; }&lt;BR /&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This code is working to create a new graphics layer and create the new map points. But I don't want to re-create the graphics I want to update the existing truck graphicsLayer coordinates. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I plugged in your code and did some testing I tried typing in my url but I was getting null reference exceptions on this line:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;GeometryService gserv = new GeometryService(Application.Current.Resources["GeometryURL"].ToString());&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I understand the suggestion you gave just not the execution. Thanks for your help.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:57:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313670#M8059</guid>
      <dc:creator>BrandonIves</dc:creator>
      <dc:date>2021-12-11T14:57:35Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313671#M8060</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Do you have the outSpatialReference on the Query the QueryTask is executing set to match your map?&amp;nbsp; That wy the results from the query task shouldn't need reprojected at all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;e.g. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
QueryTask qt = new QueryTask(uriQuery);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ESRI.ArcGIS.Client.Tasks.Query qry = new ESRI.ArcGIS.Client.Tasks.Query();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; qry.ReturnGeometry = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; qry.Where = strWhere;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;qry.OutSpatialReference = MyMap.SpatialReference&lt;/STRONG&gt;;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Re: the error on the null reference - my code sets a URL as an Application level resource, try replacing it with a hard coded URL to your geometry service.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:57:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313671#M8060</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2021-12-11T14:57:38Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313672#M8061</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Terry,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You are a genius. I got it working, thanks for your help. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For anyone else, here is my method call passing my graphics, the spatial reference, and the graphics layer:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;geometryService.ProjectAsync(graphicsLayer.Graphics, new ESRI.ArcGIS.Client.Geometry.SpatialReference(102697), graphicsLayer);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And in my project completed event I have my graphics with the attributes:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; void geometryService_ProjectCompleted(object sender, GraphicsEventArgs e)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //update rss layer with graphics reprojected to match the map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GraphicsLayer GLayer = MyMap.Layers[(e.UserState as Layer).ID] as GraphicsLayer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 13:47:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313672#M8061</guid>
      <dc:creator>BrandonIves</dc:creator>
      <dc:date>2013-12-11T13:47:36Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313673#M8062</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Do you have the outSpatialReference on the Query the QueryTask is executing set to match your map?&amp;nbsp; That wy the results from the query task shouldn't need reprojected at all.&lt;BR /&gt;&lt;BR /&gt;e.g. &lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
QueryTask qt = new QueryTask(uriQuery);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ESRI.ArcGIS.Client.Tasks.Query qry = new ESRI.ArcGIS.Client.Tasks.Query();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; qry.ReturnGeometry = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; qry.Where = strWhere;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;qry.OutSpatialReference = MyMap.SpatialReference&lt;/STRONG&gt;;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Re: the error on the null reference - my code sets a URL as an Application level resource, try replacing it with a hard coded URL to your geometry service.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am not returning any geometry with my querytask. Would that matter?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:57:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313673#M8062</guid>
      <dc:creator>BrandonIves</dc:creator>
      <dc:date>2021-12-11T14:57:41Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313674#M8063</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;So you're just hitting a view in a DB not a feature class then?&amp;nbsp; Sorry I missed that part before.&amp;nbsp; Setting the output SR on the query will have no effect then, I believe that only works for features w/ geometry.&amp;nbsp; If you so can use the ProjectAsync(graphics, sr, graphicslayer) method or if you db supports a native geometry type (sql server &amp;amp; oracle definitely do) you could try this -&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1). Add a column to you view as a geometry type based on the lat/long fields.&amp;nbsp; In Sql Server you can use something like this -&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
SELECT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TOP (100) PERCENT State + '-' + RIGHT('00000' + CONVERT(VARCHAR, FacilityID), 4) AS ID, FacilityName, FacilityType, lat, long, Address1, Address2, City, State, Zip, geography::STGeomFromText('POINT(' + STR(long, 25, 10) + ' ' + STR(lat, 25, 10) + ')', 4326) AS geog
FROM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dbo.uvFacilityAddress
WHERE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (isActive = 1)
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2). Add that view as a query layer (assuming you're using v10 or higher) to a map and publish as a map service.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3). You can then point your query task at that service/layer &amp;amp; set the outputSpatialReference on the query to get the results back in state plane.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Another thing you might need look at if this is running often, is to turn the DisableClientCaching to true on the layer.&amp;nbsp; The default is false which means the client will cache - if the truck has moved but the user hasn't panned/zoomed the querytask results might not show up correctly.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 14:57:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313674#M8063</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2021-12-11T14:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: Geometry Service Attribute Retention</title>
      <link>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313675#M8064</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Terry,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Good advice and thanks again for the help. People like you make the GIS community.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 14:30:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-silverlight-questions/geometry-service-attribute-retention/m-p/313675#M8064</guid>
      <dc:creator>BrandonIves</dc:creator>
      <dc:date>2013-12-11T14:30:52Z</dc:date>
    </item>
  </channel>
</rss>

