在构建添加了SQLite的UWP应用程序时,我收到了大约40个警告,如下所示(只是方法名称更改)(为了更好的可读性添加了一些新行)。配置设置为release。我没有在调试模式下收到任何这些消息。
C:\Program Files (x86)\MSBuild\Microsoft\.NetNative\ARM\ilc\IlcInternals.targets(936,5):
warning : ILTransform_0000:
MCG : warning MCG0006:
Unresolved P/Invoke method 'Open!sqlite3' in assembly
'SQLite.Net.Platform.WinRT, Version=3.1.0.0, Culture=neutral, PublicKeyToken=null'
because it is not available in UWP applications. Please either use an another API ,
or use [DllImport(ExactSpelling=true) to indicate that you understand the
implications of using non-UWP application APIs.
根据许多教程,我在项目中有以下参考资料。
SQLite for Windows Universal Platform
Visual C++ 2015 Runtime for Universal Windows Platform Apps
(尝试使用和不使用此扩展程序,因为有些教程在是否需要添加时有所不同)SQLite.Net-PCL
(v3.1.1)通过NuGet 目标版本和最小版本是10586.由于它是在发布模式下构建的,因此启用了本机工具链。
有谁知道这条警告信息的含义以及如何解决?
答案 0 :(得分:1)
在处理UWP unittest时遇到类似问题 - 仅在发布模式下调试模式没有问题。
我通过将UseDotNetNativeToolchain更改为false来解决它。
查看你的.vcxproj文件
<UseDotNetNativeToolchain>false</UseDotNetNativeToolchain>