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

C#.net环境下Selenium WebDriver.csproj DevTools多版本编译报错问题

C# Selenium DevTools V85引用缺失报错解决方案

报错说明

编译WebDriver.csproj项目时提示以下命名空间引用缺失,找不到对应类:

using OpenQA.Selenium.DevTools.V85.Log
using OpenQA.Selenium.DevTools.V85.Page;
using OpenQA.Selenium.DevTools.V85.Runtime;
using OpenQA.Selenium.DevTools.V85.Fetch;
using OpenQA.Selenium.DevTools.V85.Network;

报错截图:
报错截图1
报错截图2

报错原因

  • Selenium 4.4及以上版本的主包Selenium.WebDriver不再内置旧版本Chrome的DevTools协议绑定,V85(对应Chrome 85版本)的绑定已被拆分为独立NuGet包,未安装对应包就会报引用缺失。
  • 项目中Selenium.WebDriver版本与DevTools绑定版本不匹配。
  • NuGet包还原异常,依赖未正确加载。

解决方法

  • 方法1:安装对应版本的独立DevTools包
    直接在NuGet包管理器搜索安装Selenium.WebDriver.DevTools.V85,或在包管理控制台执行命令:
    Install-Package Selenium.WebDriver.DevTools.V85
    安装完成后重新编译即可。

  • 方法2:使用版本无关的DevTools API(更推荐)
    无需硬编码指定Chrome版本号,适配所有支持的Chrome版本,不需要引入V85开头的特定版本命名空间,示例调用方式:

    var chromeDriver = new ChromeDriver();
    var devTools = chromeDriver as IDevTools;
    var devToolsSession = devTools.GetDevToolsSession();
    // 直接调用对应域的方法即可,不需要指定版本
    await devToolsSession.Domains.Log.Enable();
    await devToolsSession.Domains.Network.Enable();
    
  • 方法3:清理还原依赖
    如果安装包后仍报错,删除项目根目录下的bin、obj文件夹,执行dotnet restore重新还原所有NuGet包,再编译项目即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 11:27:04