I want to make my .net 4 project load the .net 3.5 version of a nuget package so that other .net 3.5 references don’t get the nuget dll overwritten in the output directory.
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Yikes! If the package has a .NET 3.5 and a .NET 4 version of the DLL, there’s no real way to do that other than changing your project to target 3.5 itself.
I can think of a couple of workarounds though. They’re not ideal, but they’d probably work.
After you install the nuget package, go into the “packages” directory (it’ll be next to your solution (.sln) file. Find the package. Delete the “\lib\net40” folder. This way, NuGet will reference the next version down. You’ll have to manually change the assembly reference. Note if you even upgrade this package, you’ll have to do this again.
You could create a custom version of this package that only contains your 3.5 version of the DLL. Perhaps put this up in a custom feed at http://myget.org/ and install it from there.
One of those ought to work.