MongoDB.NetTopologySuite.Serialization
1.0.0
See the version list below for details.
dotnet add package MongoDB.NetTopologySuite.Serialization --version 1.0.0
NuGet\Install-Package MongoDB.NetTopologySuite.Serialization -Version 1.0.0
<PackageReference Include="MongoDB.NetTopologySuite.Serialization" Version="1.0.0" />
paket add MongoDB.NetTopologySuite.Serialization --version 1.0.0
#r "nuget: MongoDB.NetTopologySuite.Serialization, 1.0.0"
// Install MongoDB.NetTopologySuite.Serialization as a Cake Addin #addin nuget:?package=MongoDB.NetTopologySuite.Serialization&version=1.0.0 // Install MongoDB.NetTopologySuite.Serialization as a Cake Tool #tool nuget:?package=MongoDB.NetTopologySuite.Serialization&version=1.0.0
MongoDB.NetTopologySuite.Serialization
Overview
Serialize NetTopologySuite geospatial models to BSON and deserialize from BSON for MongoDB .NET C# Driver.
Installation
Install package
PM> Install-Package MongoDB.NetTopologySuite.Serialization
Register serializers
Make sure serializers are registered before any MongoDB code is executed.
BsonNetTopologySuiteSerializers.Register();
Motivation
In projects that follow Onion Architecture or any other Domain centric architecture, the domain layer sits at the center of the architecture and has no dependencies on any of the other layers.
In such setup, the domain layer is agnostic of the persistance technology used and would not have a dependency on MongoDB C# Driver, instead it's the Infrastructure/Persistence layer that has a dependency on the Domain layer.
In this scenario NetTopologySuite can be used in the Domain layer for defining geospatial types without violating Onion Architecture principles.
This library allows for that decoupling by providing the required BSON serializers/deserializers.
NetTopologySuite is also chosen by EntityFramework for defining spatial types
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- MongoDB.Bson (>= 2.18.0)
- NetTopologySuite (>= 2.5.0)
- NetTopologySuite.Features (>= 2.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.