首页 > 解决方案 > Microsoft.EntityFrameworkCore.Infrastructure.EnsureDeleted 未附加到调试器时会导致崩溃

问题描述

有一个使用 EntityFrameworkCore 作为板载数据库的 Xamarin.Forms 项目。在应用程序启动时,我们将调用:

Database.EnsureDeleted(); 

这将在需要时重置板载数据库。在 iOS 和 Android 上运行时,连接到调试器时可以正常运行。一旦我从设备上断开电源线并运行应用程序,它就会在加载时崩溃,并且我已经将其单选为 EnsureDeleted 是问题,如果我注释掉该行它会正常工作。另外我只是在它周围放了一个空的try catch,它仍然会使整个应用程序崩溃。

有任何想法吗?

标签: xamarin.formsxamarin.androidxamarin.iosentity-framework-core

解决方案


它似乎与这个问题有关:

github.com/xamarin/xamarin-android/issues/3112

这是在 VS 2019 的 16.1 版本中引入的。

按照本文中的步骤操作:github.com/xamarin/xamarin-android/issues/3112#issuecomment-495780758 使用 Xamarin Android SDK 版本 9.2.3.0,修复了崩溃。


推荐阅读