You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

引用的项目依赖DLL未被复制问题求助

解决.NET Framework WPF项目引用.NET Standard类库时EF Core程序集缺失问题

这问题我之前帮人排查过好几次,在.NET Framework项目引用.NET Standard类库并使用EF Core早期版本时特别常见,给你几个针对性的解决办法:

  • 显式在主项目安装EF Core核心包
    你的类库虽然已经安装了Microsoft.EntityFrameworkCore.Sqlite,但.NET Framework 4.7对.NET Standard 2.0的依赖传递有时候不够顺畅。直接在**MyProject(WPF主项目)**中安装同版本(2.0.3)的Microsoft.EntityFrameworkCore NuGet包,这样Visual Studio会自动将相关依赖DLL复制到主项目的输出目录。

  • 添加程序集绑定重定向
    .NET Framework项目经常遇到版本绑定冲突,打开主项目的App.config,在<runtime>标签内添加以下配置:

    <dependentAssembly>
        <assemblyIdentity name="Microsoft.EntityFrameworkCore" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.3.0" newVersion="2.0.3.0" />
    </dependentAssembly>
    

    这能强制程序运行时加载指定版本的EF Core程序集,避免版本匹配问题。

  • 手动验证并复制缺失的DLL
    打开主项目Debug输出目录(右键项目→属性→生成→输出路径),检查是否存在Microsoft.EntityFrameworkCore.dll、Microsoft.EntityFrameworkCore.Relational.dll等核心依赖。如果有缺失,直接从MyProject.Relational\bin\Debug\netstandard2.0目录中复制对应的DLL到主项目输出目录,再测试运行。

  • 更新Visual Studio 2017到最新稳定版
    VS2017早期版本对.NET Standard 2.0的依赖处理存在bug,建议将VS2017升级到15.9.x版本(这是VS2017的最终稳定版),很多依赖复制异常能通过IDE更新直接解决。

  • 再次确认“复制本地”设置
    虽然你已经尝试过,但还是要仔细核对:

    1. 在MyProject的引用列表中,选中MyProject.Core和MyProject.Relational,右键→属性,确保“复制本地”为True;
    2. 在MyProject.Relational的NuGet包管理器中,查看Microsoft.EntityFrameworkCore.Sqlite及其依赖包的“复制本地”选项,确保均设为True。

内容的提问来源于stack exchange,提问作者RA.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:37:57