Ich suche nach Informationen über Best Practices beim Referenzieren von C# -Projekten in mehreren Lösungen, sowohl im Debug- als auch im Release-Modus. nugget und symbol server (ich benutze myget, und mag es wirklich) löst das für release packages.Workflow zum Referenzieren von Projekten in mehreren VS 2017-Lösungen
Aber ich bin verwirrt darüber, was beim Debuggen zu tun ist. Wenn ich versuche, beim nuget-Ansatz zu bleiben, muss ich eine neue Debug-Version von Hilfspaketen an myget finden, da ich & Fehler finden kann, und dann den Nuget-Cache löschen und das Hauptprojekt neu erstellen. Das funktioniert, aber es wird schnell langweilig.
Gibt es eine Möglichkeit, ein Nuget-Paket zu markieren, so dass es als "nur für Debug-Verwendung" markiert ist?
war eine andere Idee hatte ich die Fähigkeiten des neuen csproj Dateiformat in VS 2017 wie folgt zu verwenden:
<ItemGroup Condition="'$(Configuration)' == 'Release'">
<PackageReference Include="Olbert.JumpForJoy.UI" Version="0.5.0" />
<PackageReference Include="Olbert.JumpForJoy.Wpf.Converters" Version="0.5.0" />
</ItemGroup>
<ItemGroup Condition="'$(Configuration)' == 'Debug'">
<ProjectReference Include="..\..\WPFUtilities\J4JUI\J4JUI.csproj" />
<ProjectReference Include="..\..\WPFUtilities\WpfConverters\WpfConverters.csproj" />
</ItemGroup>
Der erste Block die nuget Pakete verwendet, aber nur für Release-Builds. Der zweite Punkt verweist auf das Hauptprojekt bei den Tochterprojekten in meinem lokalen Dateisystem. Dies scheint mir die Möglichkeit zu geben, die Teilprojekte aus dem Hauptprojekt herauszuarbeiten. Aber um das Hauptprojekt aufzubauen, muss ich alle Nebenprojekte in die Lösung einbeziehen. Das ist keine große Sache, aber es füllt den Lösungsarbeitsbereich auf.
Wenn jemand andere Ansätze, die sie verwenden, oder Feedback zu dem, was ich tue (besonders Gotchas!), Ich bin ganz Ohr.
Möchten Sie die C# -Projekte mit Nuget sowohl im Debug- als auch im Release-Modus behandeln? AFAIK, NuGet-Paket speichert normalerweise nur einen Satz von Baugruppen für ein bestimmtes Zielframework. Es ist nicht wirklich entworfen, um eine Debug- und Release-Version zu liefern. Das scheint hier kein besserer Weg zu sein, außer dass du es bereits versucht hast, eine neue Debug-Version von Hilfspaketen zu myget zu haben, obwohl es dich langweilig macht. Weitere Informationen finden Sie unter: https://stackoverflow.com/questions/13488280/best-practices-with-nuget-debug-or-release –