Skip to content

.Net library for GeoJSON types & corresponding Json.Net (de)serializers

License

Notifications You must be signed in to change notification settings

GeoJSON-Net/GeoJSON.Net

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Backers on Open Collective Sponsors on Open Collective NuGet Version Build status

GeoJSON.NET

GeoJSON.Net is a .NET library for the RFC 7946 The GeoJSON Format and it uses and provides Newtonsoft Json.NET converters for serialization and deserialization of GeoJSON data.

Installation & Usage

GeoJSON.Net NuGet package: Install-Package GeoJSON.Net

Serialization

Position position = new Position(51.899523, -2.124156);
Point point = new Point(position);

string json = JsonConvert.SerializeObject(point);

Deserialization

string json = "{\"coordinates\":[-2.124156,51.899523],\"type\":\"Point\"}";

Point point = JsonConvert.DeserializeObject<Point>(json);

See the Tests for more examples.

Special considerations for ASP.Net Core 3.1+

System.Text.Json is the default (recommended) serializer. GeoJSON.Net does not play well with System.Text.Json and only supports Newtonsoft.Json

GeoJSON.Text is a fork of this repository and have been developed to support System.Text.Json.

If you still need to use Newtonsoft.Json in ASP.Net Core 3.1+, you must overwrite the default serializer.

  • add the "Microsoft.AspNetCore.Mvc.NewtonsoftJson" NuGet Package
  • add "services.AddControllers().AddNewtonsoftJson();" to your service configuration.

Contributing

Highly welcome! Just fork away and send a pull request. We try and review most pull requests within a couple of days.

Thanks

This library would be NOTHING without its contributors - thanks so much!!

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]