nuget和直接引用dll的方式不同

问题描述

我是.Net世界的新手,但仍在尝试掌握它。我有一个.Net core 2.1项目,并且尝试在项目中直接引用Microsoft.Identity.Client.ExtensionsMicrosoft.Identity.Client库。我从nuget下载了nupkg文件并解压缩了软件包。我将 lib \ netcoreapp2.1 中存在的库复制到我的项目目录中。我在csproj中添加了以下内容

  <ItemGroup>
    <Reference Include="Microsoft.Identity.Client">
      <HintPath>Microsoft.Identity.Client.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Identity.Client.Extensions.Msal">
      <HintPath>Microsoft.Identity.Client.Extensions.Msal.dll</HintPath>
    </Reference>
  </ItemGroup>

但是,Microsoft.Identity.Client.Extensions列出了一个未实现的依赖关系,我没有添加。该应用程序仍会编译,但行为不符合预期。我查看了.nuspec文件,发现nuget提到了如下所示的依赖项,当项目依靠nuget引用库时,它可以完美运行。下载并手动引用dll时不是这种情况。有什么方法可以将依赖项添加到我的.csproj文件中的现有dll中。问题是没有失败,并且应用程序的行为不符合预期。

<dependencies>
      <group targetFramework=".NETCoreApp2.1">
        <dependency id="Microsoft.Identity.Client" version="4.15.0" exclude="Build,Analyzers" />
        <dependency id="System.Security.Cryptography.ProtectedData" version="4.5.0" exclude="Build,Analyzers" />
      </group>
</dependencies>

我确定nuget机制正在某个地方获取两个依赖项

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...