Skip to content

Cannot resolve dll after upgrading to VS2019 #4348

Description

@jnyrup

Steps to reproduce

SupercalifragilisticexpialidociousLongConsoleApp.zip

Restore packages with e.g.

nuget restore C:\SupercalifragilisticexpialidociousLongConsoleApp\SupercalifragilisticexpialidociousLongConsoleApp.sln

Building with VS 2017 works

& '.\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe' C:\SupercalifragilisticexpialidociousLongConsoleApp\SupercalifragilisticexpialidociousLongConsoleApp.sln

Building with VS 2019 fails

& '.\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\MSBuild.exe' C:\SupercalifragilisticexpialidociousLongConsoleApp\SupercalifragilisticexpialidociousLongConsoleApp.sln

Expected behavior

Building the solution should still work in VS2019

Actual behavior

VS2019 shows the following warnings/erros:

Error	CS1061	'RetryManager' does not contain a definition for 'GetDefaultAzureStorageRetryPolicy' and no accessible extension method 'GetDefaultAzureStorageRetryPolicy' accepting a first argument of type 'RetryManager' could be found (are you missing a using directive or an assembly reference?)
Warning		The referenced component 'Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling' could not be found.
Warning		The referenced component 'Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage' could not be found.
Warning		Could not resolve this reference. Could not locate the assembly "Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

Environment data

msbuild /version output:

Microsoft (R) Build Engine version 16.0.461+g6ff56ef63c for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

16.0.461.62831

OS info:
Windows 10 Version 1809 OS Build 17763.437

Additional info:

From what I could see, the problem is related to resolving the package dlls using HintPath.
When the csproj is located at:
C:\SupercalifragilisticexpialidociousLongConsoleApp\SupercalifragilisticexpialidociousLongConsoleApp
with a HintPath of
..\packages\EnterpriseLibrary.TransientFaultHandling.6.0.1304.0\lib\portable-net45+win+wp8\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.dll

the concatenated length is above 260 (or some close number) characters.
For the real solution I was debugging, the solution became compilable once I shortened the name of a folder, such that the concatenated length was less than 260 characters.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions