2012-03-29 13 views
0

Ich habe eine Lösung, die sowohl eine Windows Forms-Anwendung als auch eine Konsolenanwendung enthält. Ich habe einige Funktionen in der Windows Forms-Anwendung, die ich in der Konsolenanwendung verwenden möchte, ohne den Code manuell an einen zweiten Speicherort kopieren und einfügen.Freigeben von Klasse/Methoden zwischen Windows Forms-Anwendung und Konsolenanwendung

Gibt es trotzdem einen Zugriff auf eine Klasse/Methoden in der Windows Forms-Anwendung von einer Konsolenanwendung? Oder brauche ich, um die Funktionalität in seine eigene DLL und Bezug zu extrahieren, die von beiden Projekten ...

+7

Ja, erstellen Sie eine eigenständige Klassenbibliothek für den freigegebenen Code. – Quintium

+4

Bitte prägen Sie Ihre Titel nicht mit "ASP.NET" und so weiter. Dafür sind die Tags da. Außerdem hatte diese Frage nichts mit ASP.NET zu tun. –

+2

Der richtige Weg, dies zu tun ist, die allgemeine Funktionalität in eine Klassenbibliothek zu extrahieren und diese Bibliothek aus den Anwendungen zu referenzieren. – David

Antwort

1
Console Project 
...Properties  
...Refernces <including CommonCode Class Library> 
...Program.cs 
...class1.cs 
...etc 
CommonCode Class Library 
...classA.cs 
...classB.cs 
...etc 




Winforms Project 
...Properties 
...Refernces <including CommonCode Class Library> 
...Form1  
...Program.cs 
CommonCode Class Library 
...classA.cs 
...classB.cs 
...etc 

das heißt beide das gleiche gemeinsamen Code-Projekt in ihren Lösungen zu verwenden, und beide verweisen das Projekt. Alternativ, wenn Sie bereits mit dem gemeinsamen Code zufrieden sind. Kompilieren Sie es als separate Lösungen (C Claas-Bibliothek) und verweisen Sie dann auf die DLL in beiden. Beide enden gleich - eine DLL im Ordner bin.

Verwandte Themen