【发布时间】:2018-08-30 07:48:51
【问题描述】:
我创建了新的ASP.NET Core Web Application 并使用了ASP.NET Core 2.1 跨平台框架。
接下来,我使用Nuget manager 添加了System.Data.SQLite.Core。它是 x86 和 x64 的官方 SQLite 数据库引擎以及 ADO.NET 提供程序。
我的主要方法
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
SQLiteConnection con = new SQLiteConnection("abc");
}
当我运行应用程序时,它会尝试搜索 1.0.109.0 而不是安装的 1.0.109.1 版本。
所以最终按预期抛出异常
System.IO.FileNotFoundException H结果=0x80070002 消息=无法加载文件或程序集“System.Data.SQLite,版本=1.0.109.0,文化=中性,PublicKeyToken=db937bc2d44ff139”。该系统找不到指定的文件。 来源=
那么,为什么它在搜索错误的版本?
截图供参考
我的解决方案平台是“任何 CPU”,我在 x64 上运行 Windows 7 在 x64 上
奇怪
当我在 SQLiteConnection 类上执行 F12 时,它会转到
我的 .csproj 文件内容
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="System.Data.SQLite.Core" Version="1.0.109.1" />
</ItemGroup>
【问题讨论】:
标签: .net sqlite asp.net-core