Quantcast
Channel: DotSpatial
Viewing all articles
Browse latest Browse all 3973

Commented Unassigned: Attribute table corruption [63615]

$
0
0
List<Coordinate> coords = new List<Coordinate>();
coords.Add(new Coordinate(1, 2, 3));
coords.Add(new Coordinate(1, 2, 4));
coords.Add(new Coordinate(1, 2, 5));
coords.Add(new Coordinate(1, 2, 6));
coords.Add(new Coordinate(1, 2, 7));
coords.Add(new Coordinate(1, 2, 8));
coords.Add(new Coordinate(1, 2, 9));
coords.Add(new Coordinate(1, 2, 10));
coords.Add(new Coordinate(1, 2, 11));
coords.Add(new Coordinate(1, 2, 12));
coords.Add(new Coordinate(1, 2, 13));

FeatureSet fs = new FeatureSet();
fs.CoordinateType = CoordinateType.Z;
// Add Some Columns
fs.DataTable.Columns.Add(new DataColumn("ID", typeof(int)));
fs.DataTable.Columns.Add(new DataColumn("GUID", typeof(string)));
fs.DataTable.Columns.Add(new DataColumn("Name", typeof(string)));

int i = 0;
foreach (var coord in coords)
{
i++;
var guid = Guid.NewGuid();
var name=string.Format("{0} {1} {2}", "Point SA", i, coord.Z);
Feature f = new Feature(coord);
try
{
var feature = fs.AddFeature(f);
feature.DataRow.BeginEdit();
feature.DataRow["ID"] = i;
feature.DataRow["GUID"] = guid.ToString();
feature.DataRow["Name"] = name;
feature.DataRow.EndEdit();

if (fs.DataTable.Columns.Contains(name))
{
feature.DataRow.BeginEdit();
feature.DataRow[name] = name + " " + coord.Z.ToString();
feature.DataRow.EndEdit();
}
else
{
fs.DataTable.Columns.Add(new DataColumn(name, typeof(string)));
feature.DataRow.BeginEdit();
feature.DataRow[name] = name + " " + coord.Z.ToString();
feature.DataRow.EndEdit();
}


}
catch (Exception ex)
{

}



}


fs.SaveAs( string.Format("{0}\\{1}", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "testAttributes.shp"),true);

Comments: I just updated with entire code snippet from test application I used to recreate the issue. I don't know why I didn't include entire snippet before. I used a WPF application in VS 2013. I used NuGet to load libraries - it loaded V1.7. The features and the DataTable fields all look great before SaveAs(). I added another attachment showing what the result looks like in ESRI Explorer and what they look like in VS debugger just before FeatureSet.SaveAs().

Viewing all articles
Browse latest Browse all 3973

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>