Aku merasakan sakitmu. Saya mengalami hal yang sama dengan NetTopologySuite (v1.13) dan berhasil melihat tes unit.
Pertama, Anda mungkin memeriksa perpustakaan DotSpatial yang dirujuk dalam pertanyaan serupa khusus untuk operasi shapefile DS
Saya pribadi senang dengan perpustakaan NTS. Setelah Anda mengetahui model objek, tidak terlalu repot untuk menyatukan sesuatu. Karena topik ini kemungkinan akan direferensikan lebih dari sekali di sini ada dump kode cepat untuk menulis shapefile dari NTS.
1) Unduh Binari NTS (1.13.0)
2) Referensi majelis berikut:
-GeoAPI, NetTopologySuite, NetTopologySuite.IO, NetTopologySuite.IO.GeoTools (tebak berapa lama waktu yang diperlukan untuk mencari tahu yang terakhir ini diperlukan)
3) Tulis beberapa kode (ini adalah pekerjaan hack 10 menit)
tambahkan pernyataan menggunakan untuk NetTopologySuite, NetTopologySuite.IO, NetTopologySuite.Fitur, GeoAPI, GeoAPI.Geometries (maaf saya tidak tahu bagaimana cara mendapatkan SO untuk memformat ini)
string path = @"C:\data\atreides";
string firstNameAttribute = "firstname";
string lastNameAttribute = "lastname";
//create geometry factory
IGeometryFactory geomFactory = NtsGeometryServices.Instance.CreateGeometryFactory();
//create the default table with fields - alternately use DBaseField classes
AttributesTable t1 = new AttributesTable();
t1.AddAttribute(firstNameAttribute, "Paul");
t1.AddAttribute(lastNameAttribute, "Atreides");
AttributesTable t2 = new AttributesTable();
t2.AddAttribute(firstNameAttribute, "Duncan");
t2.AddAttribute(lastNameAttribute, "Idaho");
//create geometries and features
IGeometry g1 = geomFactory.CreatePoint(new Coordinate(300000, 5000000));
IGeometry g2 = geomFactory.CreatePoint(new Coordinate(300200, 5000300));
Feature feat1 = new Feature(g1, t1);
Feature feat2 = new Feature(g2, t2);
//create attribute list
IList<Feature> features = new List<Feature>() { feat1, feat2 };
ShapefileDataWriter writer = new ShapefileDataWriter(path) { Header = ShapefileDataWriter.GetHeader(features[0], features.Count) };
System.Collections.IList featList = (System.Collections.IList)features;
writer.Write(featList);
Jadi, tidak terdokumentasi dengan baik tetapi cukup point & shoot setelah Anda pergi.