2016-05-17 8 views
11

Visual Studio 2015で複数のソリューションを開発しています。これらのソリューションは、ナゲットパッケージを必要とするいくつかのコアプロジェクトを共有しています。ナゲットパッケージは、あるソリューションから追加され、後で別のソリューションによって開かれたときに解決することはできません。Visual Studioで複数のソリューションとプロジェクトに1つのNugetパッケージフォルダをセットアップする方法2015

次のようにフォルダ構造がある:

  • コードベース
    • SharedProjects
      • SharedProject1
    • SolutionA
        私は SharedProject1 01にnugetパッケージをインストールすると
      • WebProjectA
      • パッケージは
      • パッケージフォルダB

  • SolutionB
  • 答えて

    9

    Nuget 3.4.3に適用されていないので、問題を解決していませんNuGet.configファイルをCodebaseディレクトリにコピーし、ソリューション内の他のNuget.configファイルと.nugetフォルダをすべて削除しました。 NuGetの設定はサブフォルダに伝播されるため、単一のNuGet.configファイルの設定がすべてのソリューションに適用されます。

    Nuget.configファイル内には、packageSource,repositoryPathという設定があります。

    例NuGet.configファイル:

    <?xml version="1.0" encoding="UTF-8"?> 
    <configuration> 
        <config> 
         <add key="repositoryPath" value="./SharedPackages" /> 
        </config> 
    </configuration> 
    

    既存nugetパッケージは、.csprojファイル内のdllの参照がまだ古いpackagesフォルダが表示されますので、アンインストールして再インストールする必要があります。または.csprojファイルを手動で編集することもできます。

    結果のフォルダ構造:

    • コードベースフォルダ
      • Nuget。設定ファイル
      • SharedPackagesフォルダ
      • SharedProjectsフォルダ
        • SharedProject1
      • SolutionAフォルダ
        • WebProjectA
        • パッケージフォルダ
      • SolutionB
        • WebProjectB
        • パッケージフォルダB
    関連する問題