Search code examples
nugetfilenotfoundexceptionvisual-studio-2022

Visual Studio 2022 can't find nuget package


What am I doing wrong here?

I have a DLL in .net Standard 2.0, and a console application, also in .net standard 2.0. The DLL is going to eventually be a custom nuget package for internal use by my dev team.

I installed System.Text.Json version 6.0.0 and I get the following runtime error:

"Could not load file or assembly 'System.Text.Json, Version=6.0.0.0".

I can see the nuget package in the location that Visual Studio 2022 is looking in.

Any thoughts on how I debug this?

I tried to explicitly install each of the dependencies, but that did not work.

***EDIT: I just realized that I no longer get that FileNotFound Exception if I explicitly copy that package's DLL into the console app's execution directory, but then I get a new FileNotFound exception for one of its dependencies. When I explicitly copy that DLL, I get another FileNotFound exception for the next dependency, and so on. I just assumed that the dependent nuget packages would get encapsulated in the dll that's using them. Copying each of the dependent DLL's is not really an acceptable solution.

Screenshot


Solution

  • After some investigation, I thought my issue might be related to:

    Dependent DLLs of a NuGet package not copied to output folder

    or related to:

    MSBuild doesn't copy references (DLL files) if using project dependencies in solution

    but that was not the case.

    The output of my console app project was a DLL, even though it was clearly set to "Console Application". I just assumed that this was a new runtime method for VS2022, but that's not it. My console application Target was set to ".Net Standard 2.0", which is intended for DLL's. Once I set the Target to ".Net 6.0", everything worked as expected, and all the DLL's and packages were copied over correctly.

    My DLL, which is being turned into a Nuget package, was properly set to ".net Standard 2.0".