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

如何解决CefSharp的System.IO.FileNotFoundException及CS0012错误

问题修复方案

一、解决NU1701警告与CefSharp.dll缺失问题

NU1701是NuGet包兼容性警告,直接导致DLL无法正确复制到输出目录,按以下步骤处理:

  • 确认项目目标框架兼容性:
    CefSharp.Offscreen对.NET版本有明确要求:
    • .NET Framework需为4.6.2及以上;
    • .NET 6/7(.NET Core)需使用v115+版本的CefSharp包。
      右键项目→属性→应用,检查并调整目标框架至符合要求的版本。
  • 清理并重建解决方案:
    依次执行Build→Clean Solution和Build→Rebuild Solution,强制NuGet重新下载并复制依赖文件到输出目录。
  • 锁定生成平台为x64:
    CefSharp不支持Any CPU,右键项目→属性→生成,将平台目标设为x64,取消勾选「首选32位」;同时在解决方案配置管理器中,将项目的平台也设为x64。
  • 移除冗余依赖包:
    你同时安装了CefSharp.Offscreen和CefSharp.WinForms,这两个包属于不同场景(无界面/WinForms界面),保留CefSharp.Offscreen即可,卸载WinForms包避免冲突。

二、解决CS0012(HtmlString未引用)错误

该错误是因为HtmlString类型属于CefSharp.Core程序集,按以下步骤修复:

  • 导入命名空间:
    在使用ChromiumWebBrowser的代码文件顶部添加:
    using CefSharp;
    
  • 确认CefSharp.Common包版本一致:
    确保CefSharp.Common的版本与CefSharp.Offscreen完全匹配,右键项目→管理NuGet程序包,检查并统一版本。
  • 手动添加程序集引用(可选):
    如果自动引用失效,右键项目→添加→引用→浏览,找到输出目录(/bin/x64/Debug)下的CefSharp.Core.dll添加引用。
  • 配置绑定重定向(仅.NET Framework):
    在app.config中添加对应版本的绑定重定向(替换版本号为你安装的CefSharp版本):
    <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="CefSharp.Core" publicKeyToken="40c4b6fc221f4138" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-118.6.0.0" newVersion="118.6.0.0" />
        </dependentAssembly>
        <dependentAssembly>
          <assemblyIdentity name="CefSharp" publicKeyToken="40c4b6fc221f4138" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-118.6.0.0" newVersion="118.6.0.0" />
        </dependentAssembly>
      </assemblyBinding>
    </runtime>
    

内容的提问来源于stack exchange,提问作者T-Bone

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 20:27:54