
Imagine transforming your .NET web applications with cutting-edge mapping capabilities. GeoBlazor 4.0 turns this vision into a reality.
We're thrilled to announce the release of GeoBlazor 4.0, representing a major milestone in our journey to bring the full power of ArcGIS to Blazor developers. This release is our most significant update yet, completely transforming how we deliver interactive mapping to ASP.NET web developers.
Meet Torchy, our new GeoBlazor mascot!
A Future-Proof Foundation
GeoBlazor 4.0 introduces an innovative approach by automating the code-generation process, ensuring our platform remains current with the latest ArcGIS features. This means:
- Always up-to-date: GeoBlazor will consistently align with the latest ArcGIS features
- Comprehensive API coverage: Enhanced access to ArcGIS capabilities, with coverage expanding rapidly
- Long-term sustainability: Simplified maintenance and faster updates
Developing an automated code generator that interprets ArcGIS type definitions, generates C# classes, and seamlessly integrates the two systems demanded considerable time and effort. Although custom modifications are still necessary on the generated code, we are already experiencing the advantages of quicker iterations for new features and bug fixes!
Two-Way Data Sync
One of the challenges of communicating between ASP.NET Core Blazor and JavaScript is keeping data in sync. GeoBlazor 4.0 introduces a major advancement in this process, as we now automatically populate most ArcGIS-generated properties in GeoBlazor's .NET classes after render. Previously, to read an ArcGIS-generated property, you would always need to call an async getter method, like await tileLayer.GetMaxScale()
. While this is still the best way to get the most current, up-to-the-minute version of any data, we now load this data from ArcGIS and populate the properties in GeoBlazor when the layer or other component is loaded. So, for example, the property tileLayer.MaxScale
should have the ArcGIS-hosted max scale setting populated after the layer renders, without calling the async getter method.
We have also added hundreds of new properties to fill out existing layers and widgets, and each property now has a dedicated getter and setter (unless it is read-only) method. Changes made after map render should still use the async setter methods rather than setting properties directly, to ensure all changes are serialized and sent to the ArcGIS JavaScript SDK.
New Layer Types
GeoBlazor 4.0 now supports a wide variety of web map standards, such as Web Map Service (WMS), Web Map Tile Service (WMTS), and Web Feature Service (WFS). Each has a related layer type (WMSLayer, WMTSLayer, WFSLayer) that can be instantiated with just a URL pointed at any data source matching that standard.
Sample implementation of a WFS layer
Sample implementation of a WMS layer
Sample implementation of a WMTS layer
GeoBlazor Pro users now have the ability to utilize the GroupLayer, enabling the organization and analysis of sublayers. While we are developing a comprehensive demonstration, here is an engaging example that highlights countries upon clicking, showcasing the capabilities of the GroupLayer feature.
Sample implementation of a Group layer
Commitment to Our Users
Current users will notice a lot of breaking changes in namespaces and property names, which is an unfortunate side effect of needing to align more closely with the ArcGIS SDK for code automation. We are committed to making this a one-time transition and maintaining a consistent API moving forward. Please read the release notes for GeoBlazor Core and GeoBlazor Pro to help migrate existing applications using version 3. If you need assistance, we are available on our Discord channel to help with your upgrade journey.
Ready-to-Run Templates
Example of Blazor app built from a GeoBlazor Template
Along with GeoBlazor 4, we have upgraded our GeoBlazor templates. These templates now closely match the base ASP.NET Core Blazor and Blazor MAUI Hybrid templates from Microsoft, with the addition of GeoBlazor. This allows you to develop a Blazor Web App, select your render modes, incorporate user authentication, and more, all without needing to write any code.
Come Travel With Us
GeoBlazor 4.0 delivers the most advanced mapping capabilities available for .NET web developers. Whether you're building sophisticated GIS applications or simply need to add beautiful, interactive maps to your Blazor projects, GeoBlazor now offers more power, more flexibility, and a more future-proof development than ever before.
Ready to revolutionize your web applications? Get started with GeoBlazor 4.0 today!