.NET Maui Blazor Hybrid App中System.Data.SQLite.EF6.dll出现AOT编译错误

bihw5rsg  于 2023-08-06  发布在  SQLite
关注(0)|答案(1)|浏览(213)

我正在开发一个使用SQLite的.NET Maui Blzor应用程序,我在发布模式下的构建过程中遇到了一个问题。特定的错误消息与AOT(提前)编译有关。下面是错误消息:
第一个月
我尝试了几种解决方案,例如确保所有必需的程序集都存在,清理和重建解决方案,但问题仍然存在。
当我为整个解决方案禁用AOT时,一切都构建得很好。但是,我想了解这个问题是否可以在启用AOT的同时解决,因为它具有性能优势。此外,我尝试使用项目的.csproj文件中的<EnableAOT>false</EnableAOT>禁用DB项目的AOT,但没有任何帮助。
其他人有没有遇到过类似的问题?有没有一种方法可以只为一个项目禁用AOT?或任何其他建议如何解决这个错误与AOT启用?任何帮助将不胜感激!

o2rvlv0m

o2rvlv0m1#

我已经找到了问题的根本原因。这个问题是由于我使用了System.Data.SQLite.EF6包库中的Microsoft.EntityFrameworkCore
正确的方法是使用Microsoft.EntityFrameworkCore.Sqlite.dll包中的Microsoft.EntityFrameworkCore
切换到Microsoft.EntityFrameworkCore.Sqlite并删除System.Data.SQLiteSystem.Data.SQLite.EF6后,AOT编译错误消失,构建过程在发布模式下成功完成,AOT开启
我希望这个更新可以帮助任何可能在未来遇到类似问题的人。

相关问题