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

NuGet包管理器未安装正确版本的Ubiety.Dns.Core问题求助

解决Ubiety.Dns.Core指定版本与编译输出版本不一致的问题

以下是几个可行的解决步骤,帮你彻底替换掉旧版本:

  • 检查依赖链,定位旧版本来源
    打开项目的NuGet包管理器,切换到「已安装」标签确认Ubiety.Dns.Core确实是4.2.2版本。接着查看「依赖项」→「NuGet」下的依赖树,看是否有其他引用的包间接引入了2.2.1版本。也可以用NuGet控制台执行命令查看完整依赖:

    # .NET Framework项目
    Get-Package -ProjectName 你的项目名 -AllVersions
    # .NET Core/.NET 5+项目
    dotnet list 你的项目文件路径.csproj package
    
  • 在项目文件中强制锁定版本
    右键项目选择「编辑项目文件」,添加配置强制所有场景使用4.2.2版本:

    <ItemGroup>
      <!-- 直接指定版本 -->
      <PackageReference Include="Ubiety.Dns.Core" Version="4.2.2" />
      <!-- 强制更新所有依赖引用的该包版本 -->
      <PackageReference Update="Ubiety.Dns.Core" Version="4.2.2" />
    </ItemGroup>
    <!-- 开启绑定重定向(适用于.NET Framework) -->
    <PropertyGroup>
      <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
      <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
    </PropertyGroup>
    

    如果是.NET Framework项目,还可以在app.config/web.config里添加绑定重定向,确保运行时加载正确版本:

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Ubiety.Dns.Core" publicKeyToken="3a4669420f67278c" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.2.2" newVersion="4.2.2" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    
  • 彻底清理后重建项目

    1. 点击菜单栏「生成」→「清理解决方案」
    2. 手动删除项目目录下的obj和bin文件夹,清除残留的旧版本DLL
    3. 重新点击「生成」→「重建解决方案」
  • 清除NuGet缓存
    打开NuGet包管理器设置,找到「缓存」选项点击「清除所有NuGet缓存」;或者手动删除本地缓存目录%userprofile%\.nuget\packages\ubiety.dns.core下的2.2.1版本文件夹,避免编译时从缓存拉取旧版本。

  • 检查编译/发布配置
    确认项目的Debug/Release配置没有单独指定不同的NuGet版本,同时检查项目属性的「生成」标签,确保输出目录没有指向包含旧DLL的其他路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 12:45:10