|
POST
|
Hi, Is the RootNode definitely of type KmlPlacemark? I recommend conditionally checking for the type of each node, noting that some may be containers (e.g. KmlFolder) containing collections of nodes, or other containers, etc. Also, although you add the layer to the view, it may still be loading when the next line tries to iterate the rootnode. You should await the KmlDataset LoadAsync e.g. `await dataset.LoadAsync();`. Alternatively you can add an event handler for the LoadStatusChanged event.
... View more
02-03-2021
09:19 AM
|
0
|
3
|
2623
|
|
POST
|
Hi, ArcGIS Runtime works with Scene Layers - you can use ArcGIS Pro to publish/share your Multipatch feature class as a Scene Layer Package for offline/disconnected use or as a Scene Layer service for online/connected use: https://pro.arcgis.com/en/pro-app/latest/help/mapping/layer-properties/create-scene-layer.htm https://enterprise.arcgis.com/en/portal/latest/use/publish-scenes.htm https://doc.arcgis.com/en/arcgis-online/manage-data/publish-scenes.htm https://developers.arcgis.com/net/scenes-3d/
... View more
02-02-2021
09:14 AM
|
1
|
0
|
1363
|
|
POST
|
Hi Chris, Are your geoprocessing packages built from models (model builder) or python scripts?
... View more
02-01-2021
01:13 PM
|
0
|
1
|
2046
|
|
POST
|
@justinfernandes One more thing to check - which version are you using? If it's not v100.10, can you update to 100.10 and retest?
... View more
02-01-2021
01:08 PM
|
0
|
1
|
3202
|
|
POST
|
Go to https://developers.arcgis.com/net/license-and-deployment/license/#license-string and sign in. The lite license string is now presented in the doc topic itself.
... View more
02-01-2021
10:18 AM
|
0
|
1
|
2834
|
|
POST
|
Your example was missing the code to add a FileGeodatabaseworkspace. For example: try
{
// Path to File Geodatabase (from your user input from folder browser dialog))
string path = "";
// The feature class name to add
string featureClassName = ""
// Start a service from the blank MPK
string mapPackagePath = @"..\..\mpk_blank.mpk";
// Create the local map service
LocalMapService localMapService = new LocalMapService(mapPackagePath);
// Create the shapefile workspace
FileGeodatabaseWorkspace fileGeodatabaseWorkspace = new FileGeodatabaseWorkspace("FileGeodatabaseWorkspace1", path);
// Add the dynamic workspace to the map service
localMapService.SetDynamicWorkspaces(new List<DynamicWorkspace>() { fileGeodatabaseWorkspace });
// Start the map service
await localMapService.StartAsync();
// Create the ArcGISMapImageLayer layer
ArcGISMapImageLayer arcGISMapImageLayer = new ArcGISMapImageLayer(localMapService.Url);
// Load the layer
await arcGISMapImageLayer.LoadAsync();
// Create the layer source that represents the shapefile on disk
TableSublayerSource source = new TableSublayerSource(fileGeodatabaseWorkspace.Id, featureClassName);
// Create a sublayer instance from the table source
ArcGISMapImageSublayer fileGeodatabaseSublayer = new ArcGISMapImageSublayer(0, source);
// Apply renderer to layer to symbolize if not default
// ...
// Add the shapefile sublayer to the imagery layer
arcGISMapImageLayer.Sublayers.Add(fileGeodatabaseSublayer);
// Add the image layer to the map
MyMapView.Map.OperationalLayers.Add(arcGISMapImageLayer);
}
catch (Exception e)
{
MessageBox.Show(e.ToString(), "Error");
}
... View more
01-29-2021
01:04 PM
|
1
|
1
|
5250
|
|
POST
|
Overall you're taking the right approach. The imagery doesn't necessarily need to be in an mmpk, although that may make it easier to transfer the file. By default we don't unpack mmpk files (the method MobileMapPackage.IsDirectReadSupportedAsync is now deprecated), but you could test unpacking to see if it makes a difference (via UnpackAsync(String, String)). Is the MrSID imagery spatial reference the same as the Map/MapView spatial reference? (dynamically re-projecting imagery unfortunately incurs a significant overhead).
... View more
01-28-2021
02:40 PM
|
0
|
0
|
1837
|
|
POST
|
Hi Kirk, What happens when you target `net5.0-windows10.0.18362.0`?
... View more
01-28-2021
10:00 AM
|
0
|
1
|
3661
|
|
POST
|
This was fixed in v100.9 (August 2020). The current release is 100.10 (January 2021).
... View more
01-27-2021
11:49 AM
|
0
|
0
|
2305
|
|
BLOG
|
We are pleased to announce the 100.10 release of ArcGIS Runtime SDK for .NET. This release includes significant new features, enhancements to existing features, performance improvements, bug fixes, and even a preview of what we have on the roadmap. You can read about the highlights common to all ArcGIS Runtime SDKs in the shared ArcGIS Runtime blog post and additional details in the 100.10 Release Notes. For you - our .NET community - here are several more details we would like to highlight... API : Nullability Nullable reference types are now supported. This release concludes the multi-release epic to incrementally annotate the ArcGIS Runtime SDK for .NET codebase for Nullable reference types. Nullability was introduced with the C# language version 8.0 and enables you to explicitly declare in your code when a reference may be null and when it will never be null, with the goal of avoiding a NullReferenceException at runtime. Now that we have annotated the ArcGIS Runtime API for .NET codebase, you can enable compile-time warnings that will help to show you where you may have missed implementing a null check which could later cause a crash while users are running your app. If your project uses C# language version 8.0 or later and you have opted your project into the nullable reference types feature (<Nullable>enable</Nullable>), you will see warnings in Visual Studio declaring the expected null state of reference type variables. API : .NET 5 .NET 5 is now supported when building WPF (or WinForms). .NET 5, the next major release of .NET Core following version 3.1, frees your applications from the system-wide .NET Framework dependency and enables you to take advantage of deployment improvements such as entirely self-contained executables. To update your WPF (or WinForms) .NET Core 3.1 apps to target .NET 5: In Solution Explorer, select the project to open the XML editor or right click the project and choose Edit Project File. Change the target framework to: <TargetFramework>net5.0-windows10.0.18362.0</TargetFramework>. Note while the target framework specifies which APIs are required/available, this becomes the effective minimum unless you also specify the SupportedOSPlatformVersion value. For example, if you want to support Windows 8.1 then also add this element to your project file: <SupportedOSPlatformVersion>8.1</SupportedOSPlatformVersion> For more information see the Microsoft docs topic Target frameworks in SDK-style projects. API : WinUI 3 (preview) At 100.10 we are releasing our first preview of support for WinUI 3, the new native UI platform for Windows. WinUI 3 can be used directly as the UI layer for your Win32 and UWP apps instead of WinForms, WPF, or UWP controls. For example, this means you can combine the modern aesthetic and performance of the WinUI 3 UX with ArcGIS Runtime capabilities targeting the Win32 desktop app platform where you are currently using WPF or WinForms. To try out ArcGIS Runtime and WinUI 3: Follow the Microsoft docs Get Started steps to Create a WinUI 3 desktop app for C# and .NET 5. Open the NuGet Package Manager for your new WinUI application project. Install package Esri.ArcGISRuntime.WinUI version 100.10.0-preview1. Open MainWindow.xaml. Add a XAML namespace e.g. xmlns:esri="using:Esri.ArcGISRuntime.UI.Controls" Add a map view control (and remove the StackPanel) e.g. <esri:MapView x:Name="MyMapView" /> Open MainWindow.xaml.cs Open a browser and go to your ArcGIS Developer dashboard to get your API key. Set your ArcGIS API key e.g. ArcGISRuntimeEnvironment.ApiKey = "<Your_API_key_here>"; Create a new map and set the map view's map property e.g. MyMapView.Map = new Map(BasemapStyle.ArcGISChartedTerritory); Run the app to see ArcGIS Runtime and Win UI in action. API : UI interaction and rendering UI and rendering related enhancements to the experience for the end-user and for the developer: Support for SceneView keyboard navigation with the UWP and WPF APIs : The following keyboard actions are now supported. If the key is held down, the action will be continuous. Keyboard interactions such as forward/backwards, sideways, or change elevation will move at one times the current altitude per second. Keyboard interactions such as turn and change pitch move at twenty degrees per second. "N" : Reset heading "P" : Reset pitch "A" : Turn west "D" : Turn east "W" : Pitch up "S" : Pitch down "U" : Raise elevation "J" : Lower elevation "Up" : move forward "Down" : move backward "Left" : move left "Right" : move right Android MapView and SceneView now rendered using the TextureView : This is an internal change improves rendering stability on a wider range of devices and GPUs, particularly when using the SceneView. API : Web and security Enhancements as part of our ongoing work to enable efficient, secure access to remote content: Improved support for proxy authentication workflows : The AuthenticationManager will now raise an authentication challenge when a 407 Proxy Authentication Required status code is returned. A new ProxyCredential class provides support for adding network credentials for a given Uri and HTTP authentication scheme (e.g. "Basic"). Additionally, CredentialRequestInfo now has a ProxyServiceUri property to distinguish between the proxy service URI and the destination service URI (e.g. the portal URI). Support for OAuth2 Proof Key for Code Exchange (PKCE) : ArcGIS Runtime API for .NET will automatically use OAuth2 PKCE if supported by the server. Android CredentialPersistence implementation has been updated for API 23 : The CredentialPersistence approach now uses AES symmetric keys in the keystore. If you previously implemented credential persistence in your .NET Android applications, we recommend resetting any cached credentials via the KeyStoreCredentialPersistence.Clear() method which will clean up legacy keys and generate a new secret key with updated security the next time persistence is used. All to ArcGIS Online are now sent as HTTPS. API : Additions and enhancements Tiles will be re-requested in network disconnect / reconnect scenarios. Geometry optimizations resulted in less memory allocated when working with PointCollections, and when constructing polylines and polygons from points. Improved error handing when trying to start SystemLocationDataSource with location services disabled, raising a NotSupportedException. Resolved an issue binding to RuntimeObservableCollection. API : Native DLL name changes Multi-version, side-by-side deployments of the WPF API included with ArcGIS Runtime SDK for .NET are now supported. This enhancement required a minor change to the deployment profile: RuntimeCoreNet.WPF.dll and RuntimeCoreNet.dll files now include the version number in the file name: RuntimeCoreNet100_10.dll RuntimeCoreNet100_10.WPF.dll. Additionally, a manifest file (runtimecoreAssembly.manifest) is now included with the native libraries and must be included in your deployments to enable multi-version, side-by-side support. Note that if you are using WPF for .NET Core and have written a custom DllImportResolver, you will need to update the dll name string. Consider using String.StartsWith("RuntimeCoreNet") to locate the library. SDK : Toolkit The Toolkit for ArcGIS Runtime SDK for .NET is released in unison with ArcGIS Runtime 100.10 and includes components that support your development of apps when using WPF, UWP, Xamarin.Android, Xamarin.iOS, and Xamarin.Forms. SDK : Documentation Many exciting updates to the ArcGIS developer site as part of the ArcGIS Platform launch. SDK : Samples New samples, sample updates, and enhancements to the sample viewer apps: New sample : Edit features with feature-linked annotation. Various bug fixes across all platforms. New basemap styles : Samples have been updated to use the new BasemapStyle constructor on the Map class. API key management : All sample viewers now have UI support for setting an API key and persisting on the device. Use of Esri location services, including basemaps and geocoding, requires either an ArcGIS identity or an API key. An API key is now required when using the samples. Your default API key will be created for you when you sign up for an ArcGIS Developer account and can be accessed from your ArcGIS Developer dashboard. For more information see security and authentication overview. You can also specify your API key directly in the sample viewer source code in the GetLocalKey() method of the ApiKeyManager class. SDK : Open Source Apps Indoor routing: Version 2.0.4 includes improvements to documentation, as well as improved support for some iPhones in landscape mode. Maps App: Version 1.0.8 includes improved documentation, improved support for notched iOS and Android devices, and support for dark/night theme. Offline Mapbook: Version 1.0.7 includes improved documentation and fixes a problem affecting builds using Visual Studio 2017. Deprecation notices Support on the Windows operating system for graphics hardware rendering of maps and scenes at and below Direct3D Feature Level 9_3 has been removed. Version 100.9 was the last release to include support for this capability. Version 100.10 requires Direct3D Feature Level 10_0 minimum to enable hardware GPU rendering of maps and scenes. On devices with a maximum Direct3D Feature Level at or below 9_3, ArcGIS Runtime will use the DirectX component WARP to support the display of maps and scenes via software rendering. To determine the Direct3D Feature Level(s) supported by the hardware on a specific device, follow the instructions to Open and run DxDiag.exe, select the Display tab, and within the Drivers section refer to the Feature Level value(s) listed. ArcGIS Runtime Local Server version 100.10 only supports geoprocessing and map packages created with ArcGIS Pro. Version 100.9 was the last release to support ArcGIS Desktop 10.x packages created in ArcMap. ArcGIS Runtime Local Server There is an upcoming 100.10 release of the ArcGIS Runtime Local Server component to provide map and geoprocessing package compatibility with ArcGIS Pro 2.7.x. We anticipate being able to announce this release within the next few weeks. Until then you can update your existing WPF projects to reference Esri.ArcGISRuntime.WPF 100.10 and continue to reference Esri.ArcGISRuntime.LocalServices 100.9. We thank you for your ongoing support and feedback and hope you will find these updates valuable as you continue to use ArcGIS Runtime to build amazing applications for your users. The ArcGIS Runtime .NET Dev Team
... View more
01-27-2021
10:24 AM
|
3
|
0
|
4761
|
|
POST
|
It looks like you have a standalone test app - can you share your code?
... View more
01-25-2021
12:02 PM
|
0
|
4
|
5291
|
|
POST
|
File Geodatabases are not supported directly by ArcGIS Runtime, but it is possible to use them with the ArcGIS Runtime Local Server component. When using ArcGIS Runtime SDK for .NET, the Local Server is only available with the WPF API and on Windows (not supported when usinf the Android, iOS, or UWP APIs). You can follow the same workflow as shown in this sample, but instead of creating a `ShapefileWorkspace`, you will create a `FileGeodatabaseWorkspace`. Note, you will need to know in advance the name of the data set within the file geodatabase that you want to add. You can achieve this by also writing a python script in ArcGIS Pro which would take an input string that is the file geodatabase path and return a list of datasets ad a geoprocessing recordset. API Ref: https://developers.arcgis.com/net/latest/wpf/api-reference/html/T_Esri_ArcGISRuntime_LocalServices_FileGeodatabaseWorkspace.htm Sample (Shapefile): https://github.com/Esri/arcgis-runtime-samples-dotnet/tree/v100.7.0/src/WPF/ArcGISRuntime.WPF.Viewer/Samples/Local%20Server/DynamicWorkspaceShapefile Creating a geoprocessing package for Local Server: https://developers.arcgis.com/labs/pro/prepare-a-geoprocessing-service-for-offline-use/ Python script example: # Import necessary modules
import arcpy
import os
# Set variables from input parameters.
workspace = arcpy.GetParameterAsText(0)
# Set the current workspace
arcpy.env.workspace = str(workspace)
# Create the output table.
outTableFc = arcpy.CreateTable_management('in_memory', 'datasets')
# Set the field names and definitions for the output table.
arcpy.AddField_management(outTableFc, 'NAME', 'TEXT', '', '', 256)
arcpy.AddField_management(outTableFc, 'DATATYPE', 'TEXT', '', '', 256)
# Create an insert cursor to insert rows into the output table.
fields = ['NAME', 'DATATYPE']
cur = arcpy.da.InsertCursor(outTableFc, fields)
# Feature
datasets = arcpy.ListFeatureClasses()
# For each dataset insert the name into a new row in the table.
for dataset in datasets:
cur.insertRow((dataset, 'Feature Class'))
# Mosaic
datasets = arcpy.ListDatasets(feature_type='mosaic')
# For each dataset insert the name into a new row in the table.
for dataset in datasets:
cur.insertRow((dataset, 'Mosaic'))
# Raster
datasets = arcpy.ListDatasets(feature_type='raster')
# For each dataset insert the name into a new row in the table.
for dataset in datasets:
cur.insertRow((dataset, 'Raster'))
# Raster
datasets = arcpy.ListDatasets(feature_type='rastercatalog')
# For each dataset insert the name into a new row in the table.
for dataset in datasets:
cur.insertRow((dataset, 'Raster Catalog'))
del cur
# Set the output parameter.
arcpy.SetParameterAsText(1,outTableFc)
... View more
01-24-2021
11:16 AM
|
0
|
6
|
5305
|
|
POST
|
In the examples above you will write code to query the database/datatable then create features or graphics with geometry, attributes, and a renderer. These examples assume relatively low volumes of data, e.g. 1000s or 10,000s of features/graphics because you will retrieve all the records in one query and add them to the map view. For larger volumes of data where you want to retrieve data from the database based on a spatial queries. for example as the user pans or zooms the map view, a spatially enabled database and a feature service are recommended. For more information see https://pro.arcgis.com/en/pro-app/latest/help/sharing/overview/introduction-to-sharing-web-layers.htm.
... View more
01-19-2021
01:30 PM
|
0
|
0
|
2749
|
|
POST
|
You can use either a GraphicsOverlay or a FeatureCollectionLayer to display a layer from a database/datatable. I've summarized some of the key differences below. GraphicsOverlay: Suitable for displaying temporary data, particularly if the data will be updated frequently. Part of the MapView and will be rendered on top / in front of all other content in the Map. Will not be saved if you save the Map. Sample: https://github.com/Esri/arcgis-runtime-samples-dotnet/tree/main/src/WPF/ArcGISRuntime.WPF.Viewer/Samples/GraphicsOverlay/AddGraphicsRenderer FeatureCollectionLayer: Suitable for persistent data where you want the behavior to match other feature data in the map. Part of the OperationalLayers collection in the Map and will be rendered in the order of the layers in the Map. Will be saved if you save the Map. Sample: https://github.com/Esri/arcgis-runtime-samples-dotnet/tree/main/src/WPF/ArcGISRuntime.WPF.Viewer/Samples/Layers/FeatureCollectionLayerFromQuery For more information see: https://developers.arcgis.com/net/latest/wpf/guide/layer-types-described.htm https://developers.arcgis.com/net/latest/wpf/guide/features-and-graphics.htm Tutorials: https://developers.arcgis.com/labs/net/display-point-line-and-polygon-graphics/ https://developers.arcgis.com/labs/net/style-feature-layers/ For a larger example see: https://github.com/Esri/arcgis-runtime-demos-dotnet/tree/main/src/GeoEventServerSample
... View more
01-18-2021
02:48 PM
|
1
|
1
|
2758
|
|
POST
|
If you're looking to deploy cached tiled basemaps covering region/continent/global scale you should consider generating the cache as a desktop process using ArcGIS Pro or as a server-side process using ArcGIS Enterprise and side-loading the cache onto each device. I recommend contacting your local esri office to discuss data options in more detail: Contact Us (esri.com).
... View more
01-04-2021
01:46 PM
|
0
|
0
|
5145
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 04-14-2026 05:04 AM | |
| 1 | 02-20-2024 07:02 AM | |
| 1 | 01-19-2026 06:44 AM | |
| 1 | 12-10-2025 07:16 AM | |
| 1 | 11-21-2025 08:12 AM |
| Online Status |
Offline
|
| Date Last Visited |
07-02-2026
06:07 AM
|