Laden...

Wie kann man in Visual Studio zwei Projekte gleichzeitig starten?

Erstellt von KuGBeginner vor 2 Jahren Letzter Beitrag vor 2 Jahren 763 Views
K
KuGBeginner Themenstarter:in
21 Beiträge seit 2015
vor 2 Jahren
Wie kann man in Visual Studio zwei Projekte gleichzeitig starten?

Hallo an das Forum,

ich bearbeite derzeit ein c# Consolen Projekt mit einer eingebundenen dll in VisualStudio 2022 in einer Projektmappe.
Wenn ich die dll ändere, lege ich das Startprojekt auf die dll fest und kompiliere die Änderung.
Anschließend muss ich die Console als Startprojekt festlegen und erneut kompilieren.

Wenn ich mehrere Startprojekte verwende, muss ich das kompilieren ebenfalls zwei mal ausführen ...

Gibt es die Möglichkeit, diesen Prozess zu vereinfachen und "mit einem Klick" diese Aufgabe zu erledigen?
Vielen Dank für die Unterstützung!

87 Beiträge seit 2016
vor 2 Jahren

Hallo,

VS - Main Menü - Erstellen - Batch erstellen

Ist es dass was du suchst?

glandorf

4.942 Beiträge seit 2008
vor 2 Jahren

Schau dir auch die "Projektabhängigkeiten" (build dependencies/project dependencies) an.

Es macht ja keinen Sinn eine DLL (Class Assembly) als Startprojekt festzulegen.

2.080 Beiträge seit 2012
vor 2 Jahren

Eigentlich sollte Visual Studio deine DLL automatisch kompilieren, wenn dein Konsolenprojekt sie braucht und sich darin auch etwas geändert hat.
Und das funktioniert auch ganz sicher, immerhin hast Du nur eine DLL, große Projekte haben 100(e) DLLs in einer Projektmappe 😉 Wenn das nicht funktionieren würde, wäre beim Visual Studio Team von Microsoft die Hölle los...

Du hast also irgendein anderes Problem, z.B. falsche Projekt-Referenzen.
Ich habe z.B. schon häufiger Referenzen gesehen, die die DLL im Output-Verzeichnis direkt referenzieren.
Das funktioniert, aber für Visual Studio ist das dann nur eine x-beliebige DLL ohne jede Projekt-Zugehörigkeit und kompiliert sie natürlich auch nicht automatisch.

Aber abgesehen davon:
Du kannst auch einen Rechtsklick auf jedes Projekt oder die Projektmappe machen und dort jedes Projekt oder die Projektmappe direkt kompilieren.

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

K
KuGBeginner Themenstarter:in
21 Beiträge seit 2015
vor 2 Jahren

Vielen Dank für den Hinweis ==> mit einem ShortCut ist es eine deutliche Arbeitserleichterung!

K
KuGBeginner Themenstarter:in
21 Beiträge seit 2015
vor 2 Jahren

Eigentlich sollte Visual Studio deine DLL automatisch kompilieren, wenn dein Konsolenprojekt sie braucht und sich darin auch etwas geändert hat.

Das funktioniert bei mit nicht ==> Console arbeitet auf Net 6.0 und die dll mit Framework 4.8.
Bisher habe ich in meinen Programmen keine weiteren Fehler entdecken können, die auf diese Kombination zurückzuführen wären ....
Sollte ich darüber noch einmal nachdenken?

2.080 Beiträge seit 2012
vor 2 Jahren

Console arbeitet auf Net 6.0 und die dll mit Framework 4.8.

Das ist dein Fehler.
Das mag funktionieren, ist aber mehr Zufall, weil dahinter der gleiche Byte-Code (IL) steht, aber beides sind verschiedene Frameworks und Du hast keine Garantie, dass es auch in Zukunft noch funktioniert.

Und nein, nur weil das eine Version 4.8 und das andere Version 6 ist, ist das nicht abwärtskompatibel, wie es bisher sonst immer war.
.NET 4.8 ist die letzte Version der "alten" Welt, alles danach ist von Grund auf erneuert und nicht abwärtskompatibel.

Wenn die DLL auch in einem anderen Projekt, das .NET 4.x sein muss (z.B. nicht Abhängigkeiten, die nicht aktualisiert werden können), dann setze die DLL mit .NET Standard 2.0 um, das wird von .NET 4.x und .NET 6 unterstützt.

Abt war so freundlich, das zusammenzufassen (hätte ich von Microsoft erwartet, aber naja):
[FAQ] Das .NET Ökosystem - .NET, .NET Core, .NET Standard, NuGet und Co

Und die Versionen-Tabelle von Microsoft:
.NET Standard-Versionen

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

16.842 Beiträge seit 2008
vor 2 Jahren

Abt war so freundlich, das zusammenzufassen (hätte ich von Microsoft erwartet, aber naja):

Bin ja von der Microsoft Community 🙂

J
641 Beiträge seit 2007
vor 2 Jahren

Es ist durch den compatibility mode aber erlaubt.

Port from .NET Framework to .NET 6 - .NET Core

zumindest unter windows.

cSharp Projekte : https://github.com/jogibear9988

2.080 Beiträge seit 2012
vor 2 Jahren

Hm - wusste ich nicht.

Deshalb sollte man es aber dennoch nicht so machen.
Das sollte wenn dann nur eine Not-Lösung für alle Projekte sein, für die es nicht anders geht.
Und ich bin mir ziemlich sicher, hier gibt es noch andere Optionen 😉

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.