ThinkGeo.com    |     Documentation    |     Premium Support

Feature.Tag is not saved

Hello,


After I installed latest map suite version (v7.0.238.0), feature.tag is not saved anymore.

I am setting tag property and it used to work before (at least in 7.0.0.151), but now it’s always null.  


Please check.


Thanks,

Inna



Hi, 
  
 Another issue I found with the latest version is in NumericFormat of TextStyle. 
 I’m setting NumericFormat to “{0:0m}”,  latest version returns {0:3m}, and the old version returns correct result - 3m.  
  
 Inna 


Hi Inna, 
  
 Thank you very much for the feedback, I guess it should be a bug from a recent change, we will have a check ASAP and then i will post thd update here.  
  
 Best Regards! 
 Johnny

Hi Inna, 
  
 Thank you very much for the feedback, I guess it should be a bug from a recent change, we will have a check ASAP and then i will post thd update here.  
  
 Best Regards! 
 Johnny

Hi Inna, 
  
 Thank you very much for the feedback, I guess it should be a bug from a recent change, we will have a check ASAP and then i will post thd update here.  
  
 Best Regards! 
 Johnny

Hi Inna,



For the tag data missing, would you let us know in which case it happens? for example in which events or some operations like edit etc. or any codes are helpful. That would help us to position the issue.



As for the NumericFormat issue, We have conformed it that it’s a but and we have fixed it in the latest version(7.0.0.242 or 7.0.242.0 might be building now). Please get it and have a try once they are enable.



Regards,

Troy


Hi Troy, 



It’s difficult to provide a code example, but basically I’m using modified KmlExtension code.  

I override FeatureLayer and FeatureSource and as far I can tell, function GetAllFeaturesCore returns all the features with correct tags.  

But the call layer.FeatureSource.GetFeaturesInsideBoundingBox or layer.FeatureSource.GetFeaturesByColumnValue returns features with empty tags. 

  Following code works:


protected override Collection<Feature> GetAllFeaturesCore(IEnumerable<string> returningColumnNames)
       {
           Collection<Feature> returnFeatures = new Collection<Feature>();
 
           foreach (Feature feature in inMemoryFeatureLayer.InternalFeatures)
           {
               Feature newFeature = GetClonedFeature(feature, returningColumnNames);
               returnFeatures.Add(newFeature);
           }
 
           return returnFeatures;
 
       }
 
       private static Feature GetClonedFeature(Feature feature, IEnumerable<string> returningColumnNames)
       {
           Dictionary<stringstring> columnValues = new Dictionary<stringstring>();
           foreach (string columnName in feature.ColumnValues.Keys) 
           {
               columnValues.Add(columnName, feature.ColumnValues[columnName]);
           }
 
           byte[] wellKnownBinary = feature.GetWellKnownBinary();
           byte[] projectedWellKnownBinary = new byte[wellKnownBinary.Length];
           Buffer.BlockCopy(wellKnownBinary, 0, projectedWellKnownBinary, 0, wellKnownBinary.Length);
           Feature insideFeature = new Feature(projectedWellKnownBinary, feature.Id, columnValues);
           insideFeature.Tag = feature.Tag;
           return insideFeature;
       }

And this does not work:


protected override Collection<Feature> GetAllFeaturesCore(IEnumerable<string> returningColumnNames)
       {
           return this.inMemoryFeatureLayer.InternalFeatures;
       }



 Inna

Hi Inna, 
  
 We just fixed a bug which might be the root of your issue but not sure, would you please get the 7.0.0.244 or 7.0.244.0 and then have a try(the version is still building, please wait some time). 
  
 But there still are some thing confused us. Based on the two block codes, the returned features are all from the same “inMemoryFeatureLayer.InternalFeatures”, and what I am confused is as the first one can get the tag from the “InternalFeatures”, then the second one should also can. So, would you please check the feature’s tag to see if the tag have been missing before adding to the “InternalFeatures” in the second block codes? 
  
 If the issue persists, please feel free to let us know. 
 Regards, 
 Troy