Question

I'm still learning about NuGet and have a (hopefully not stupid) question: how are the components/assemblies in NuGet packages intended to be distributed to end users? The docs I've found are all about how NuGet packages get installed on developer systems, but nothing addresses how the resulting software is shipped/installed.

My best guess is that the developer using the package must decide how to get the components or assemblies to the end users, presumably by including them inside whatever installer the developer builds. The developer is also presumably responsible for any required registration (if side-by-side installation is not sufficient). Basically I'm guessing that NuGet and the concept of packages are out of the loop at this stage. Is that right?

Was it helpful?

Solution 2

NuGet adds the assemblies as references to your application's project. When you compile your application, you'll see all the assemblies you pulled in via NuGet in the output directory (typically bin\debug or bin\release).

The idea here, as Andy says, is that these assemblies are now part of your application just as if you had found the assembly and referenced it manually.

Basically I'm guessing that NuGet and the concept of packages are out of the loop at this stage. Is that right?

Yep. However you plan to ship your application binary is the same way you distribute the assemblies that were "installed" by the NuGet packages. You don't need to distribute the packages, just the assemblies that were referenced by your application.

OTHER TIPS

They aren't intended for end users. NuGets purpose is to help developers manage their software dependencies. The developers still package and deploy their application and its dependencies the same way they always have.

This can be via an MSI installer, exe installer, ClickOnce or Windows Store installation.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top