c# - Nuget - “无法加载文件或程序集‘{类名},版本 = xxx,文化 = 中性,PublicKeyToken = null’或其依赖项之一”
问题描述
我正在使用 .NetStandard 创建一个类库,并且我从 NuGet 商店的 Selenium 包中下载了以下内容
现在我有一个简单的测试代码
using System;
using Operation_Forage_V2;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
public class test
{
public static void Main(string[] args)
{
Uri Aurl = new Uri("https://www.youtube.com/");
IWebDriver aDriver;
aDriver = new ChromeDriver();
aDriver.Url = Aurl.OriginalString;
var element = aDriver.FindElement(By.ClassName("sa_wr"));
var innerHtml = element.GetAttribute("innerHTML");
Console.WriteLine(innerHtml.Substring(0, 100)); //just to see if it got the html
}
}
问题是当我运行代码(作为控制台应用程序)时,出现以下错误
我在这个网站上看到过类似的问题,但他们没有帮助我
我不知道为什么会发生这个错误,特别是考虑到驱动程序和正确版本的驱动程序已经使用 NuGet 下载并且图片清楚地显示了它。
解决方案
我不认为这是 .Net Standard 的问题,因为我能够加载它,但出现了不同的错误,因为我运行了更新版本的 Chrome,但我能够使用加载程序集正常类库(.Net Standard 2.0.3)和控制台应用程序(.Net Core 3.1)。
编辑:您的输出/bin 文件夹应如下所示:
...并且您的参考库的 .csproj 文件至少应具有以下内容:
Edit #2: I just noticed from your nuget packages screenshot above that you have warnings on them. Please delete remove you references and try adding them back, or if you right click your project is VS there should be an option to redownload your packages, but I never have much success with the ladder method. However it does seem to be an issue with you packages. If these don't work for you, please try removing your bin and obj folders and rebuild, sometimes this can help. If you still have issues, please share the ⚠️ messages as they might assist in debugging.
Edit #3: You may also want to try and see if adding this <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
to you .csproj file as explained here might help: Nuget Pkg Dlls Missing from Build Folder in .Net Standard DLL Project. dlls are Not Copy Local? Fix in Visual Studio 2019?
推荐阅读
- r - 将单元格值与第一列相乘
- flutter - Flutter 看不到图片
- angular - 如何将 async/await 与 observable 的管道图一起使用?
- android - Android 上的 pytorch KAIR 示例
- react-native - 获取在 const 中设置的产品 ID 在反应本机循环中使用 onPress
- python - 计算pyspark中列的中位数
- javascript - 如何使故事书在反应中充满活力
- c# - 是否可以使用 EF 将只读字段提交到 Cosmos 中的数据库?
- azure - 如何使用自定义脚本扩展将多个脚本部署到 Azure Windows VM?
- reactjs - 使用 ApolloClient 从 useContext 钩子导入一个简单的变量