11-18, 09:00–12:00 (Pacific/Auckland), WF610
The .net-platform is gaining ground in the open-source community but is it for us “spatial-junkies”?
In this workshop we touch on the subject, going through possibilities and limitations of using .net in foss4g.
Database connections
Using existing spatial servers
Building your own spatial server
Frontend interactive maps
Is .NET Ready for the Spatial World?
In 2014, Microsoft announced that the .NET Core platform would become open source. Since then, it has steadily gained traction within the open-source community. But how well does it fit within the FOSS4G (Free and Open Source Software for Geospatial) ecosystem?
This workshop aims to explore exactly that—bridging the powerful, modern capabilities of the .NET platform with the rich, well-established tools in the OSGeo stack.
Why Consider .NET for Geospatial Projects?
There are several reasons why you might choose the .NET platform for geospatial applications:
* Legacy integration: You may be working in an enterprise environment where .NET systems already exist, and you're looking to add spatial functionality.
* Greenfield projects: You may be considering .NET for its modern tooling, performance, or cross-platform capabilities using .NET 8+.
* C# language benefits: C# is expressive, type-safe, and comes with excellent async/await support—useful for scalable geospatial applications.
* Strong IDEs: With Visual Studio and Visual Studio Code, .NET developers benefit from some of the best development environments available.
This workshop is for anyone curious about using .NET as a viable toolset in geospatial development—whether for new applications or enhancing existing systems.
Workshop Structure
The workshop will consist of three short, focused programming examples. Each one introduces a different layer of the technology stack—from database interaction to frontend mapping.
1)Database Access with PostGIS Using Npgsql
We’ll start at the data layer, using the Npgsql library to connect a C# application to a PostgreSQL/PostGIS database.
Topics include:
Connecting to PostGIS with connection strings
Executing spatial queries
Reading and writing geometry types using NetTopologySuite.IO.PostGIS
Mapping results to C# objects
2)Handling Spatial Data in the Backend with NetTopologySuite
Next, we move to the backend. The NetTopologySuite library provides robust spatial capabilities similar to JTS (Java Topology Suite).
Topics include:
Representing geometries such as points, polygons, and linestrings
Performing spatial operations (e.g., intersection, buffering, distance)
Building spatial APIs using ASP.NET Core
3)Serving Frontend Maps
Finally, we bring everything to life in the browser. We will demonstrate how to use Blazor (a .NET-based frontend framework) alongside OpenLayers to create an interactive web map.
Topics include:
Serving GeoJSON data via Web API
Displaying spatial data in OpenLayers/Leaflet in a .net-context.
Adding interactivity: popups, hover info, and basic layer control
This combination lets you stay within the C# ecosystem across the full stack while integrating with powerful open-source geospatial libraries.
Who Should Attend?
This workshop is ideal for:
.NET developers new to the FOSS4G ecosystem who want to understand how to integrate spatial capabilities
Project leaders or software architects evaluating .NET for geospatial projects
Geospatial professionals who find themselves moving into or collaborating with teams using the .NET platform
Whether you're an experienced backend developer or a GIS expert exploring new toolchains, this session will offer practical, real-world insights.
Prerequisites
Attendees should have:
* Basic familiarity with C# and the .NET platform
* Experience using an IDE such as Visual Studio or Visual Studio Code
* A general understanding of geospatial concepts (e.g., coordinates, layers, spatial queries)
Keywords
.NET, PostGIS, Npgsql, NetTopologySuite, OpenLayers, Leaflet,C#, FOSS4G, spatial API
I have worked in the GIS industry for over 30 years. In recent years, I have become deeply focused on the FOSS4G technology stack, implemented in a .NET context. I hope to be able to help new users in the same way I was helped at the start of my open-source career.