AnsweredAssumed Answered

Using the Esri Runtime in a Class Library

Question asked by mhamsa on Dec 4, 2019
Latest reply on Dec 6, 2019 by mhamsa



We have developed some .NET 4.7.2 Class Libraries and are using the Esri Runtime SDK in those class libraries. These class libraries get compiled into DLLs and those DLLs are used in other client applications. When the code in these class libraries attempts to open a mobile map package (MobileMapPackage.OpenAsync), it seems like something is happening in the Runtime, like an unhandled exception of some sort, and the mobile map packages do not load. We've wrapped the call in a try/catch but no exceptions are thrown. If I try to add another call before MobileMapPackage.OpenAsync, like MobileMapPackage.IsDirectReadSupportedAsync, we do get an exception - Unable to load runtimecore.dll - even though all of the ArcGISRuntime folders, assemblies and dependencies are in the correct location under the bin folder.


I'm really at a loss right now. I've tried the things I know and I'm not having any luck.


I've attached a simple Visual Studio 2019 solution that you can use to reproduce the problem. You may need to "Restore NuGet Packages", once you open the solution. Also, The file name for the mobile map package is hard-coded, so you will need to change that code before you run the app Otherwise, it should be all ready to go. You can step through the code and notice that once you get the MobileMapPackage OpenAsync or IsDirectReadSupportedAsync you will start running into problems.



Mike Hamsa