locked
best practices with multiple user interface projects and package manager RRS feed

  • Question

  • User1080785583 posted

    I have 3 web projects that are not related. One is an API, E-Commerce website, and Reporting. Each uses common interfaces and packages. The problem is the package files. Is there a wise way to remove dependencies from each package from the UI side? Example is MVC causes me to upgrade packages because I moved my IClientValidatable to a common dll that causes other websites to force upgrade of MVC dll, which sucks because why is it such a big deal if I use MVC 4 vs MVC 5 in my new web API project. 

    C:\_source\xx\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll

    C:\_source\xx\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll

    What ends up happening when I try to restore packages for the rest of the projects is this error...

    Error 3 This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is ..\packages\Microsoft.Diagnostics.Tracing.EventRegister.1.0.26\build\Microsoft.Diagnostics.Tracing.EventRegister.targets. C:\_source\xx-dev\xx\xx.Website.csproj 391 5 xx.Website

    My API project is fine, my Report project is fine... what gives??? All my references are broken in Website.csproj but I see the plethora of packages in my website.package.config

    ...Confused

    Tuesday, February 17, 2015 3:22 PM

All replies

  • User1689970273 posted

    so you have a problem with nuget packages.  Well there are various solution.

    1.   You must modify the nuget package on where the location. You should have at least a shared location

    e.g.

    <?xml version="1.0" encoding="utf-8"?>
    <settings>
      <repositoryPath>..\yourshareddirectory\Packages</repositoryPath>
    </settings>
    2. Create a new nuget server repository and put all components there by folder/project. (you may need to modify your
    configuration as well to point to the new nuget server)
    Tuesday, February 24, 2015 3:07 PM