VB.NET gibt es include wie bei PHP?
Hallo
bin im Moment dabei, über Visual Studio mit VB.NET ein paar Anwendungen zu schreiben.
Funktioniert auch schon ganz gut. Man lernt dazu.
Wenn ich Funktionen habe, die ich in verschiedenen Projekten verwenden möchte, wäre es ja nicht gut, wenn
ich jedesmal diese Funktion in den Source schreibe.
Bei PHP kenne ich es so, dass ich meine Funktionen in einer Datei stehen habe (z.B. funktionen.php) und diese
an passender Stelle mit
in den Programmsource einfüge.
Gibt es sowas bei VB auch?
Hab jetzt ne ganze Weile gegoogled, aber nichts passendes gefunden.
bin im Moment dabei, über Visual Studio mit VB.NET ein paar Anwendungen zu schreiben.
Funktioniert auch schon ganz gut. Man lernt dazu.
Wenn ich Funktionen habe, die ich in verschiedenen Projekten verwenden möchte, wäre es ja nicht gut, wenn
ich jedesmal diese Funktion in den Source schreibe.
Bei PHP kenne ich es so, dass ich meine Funktionen in einer Datei stehen habe (z.B. funktionen.php) und diese
an passender Stelle mit
include "funktionen.php";
Gibt es sowas bei VB auch?
Hab jetzt ne ganze Weile gegoogled, aber nichts passendes gefunden.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666226
Url: https://administrator.de/contentid/666226
Ausgedruckt am: 22.11.2024 um 11:11 Uhr
12 Kommentare
Neuester Kommentar
Ein Verweis auf Google wird nicht gerne gesehen in einem Forum, aber, den ganzen Text und die Warterei hättest du dir sparen können :c)
Google, erster Treffer:
https://docs.microsoft.com/de-de/dotnet/visual-basic/language-reference/ ...
Google, erster Treffer:
https://docs.microsoft.com/de-de/dotnet/visual-basic/language-reference/ ...
Funktionen in eine Klasse (*.class) Datei auslagern und dann in deinen Projekten als Referenz ein (Rechtsklick auf Projekt > Referenz einfügen).
Dann kannst du jederzeit in deinem Projekt über den Klassennamen darauf zugreifen.
Gruß w.
Dann kannst du jederzeit in deinem Projekt über den Klassennamen darauf zugreifen.
Gruß w.
Zitat von @NordicMike:
Ein Verweis auf Google wird nicht gerne gesehen in einem Forum, aber, den ganzen Text und die Warterei hättest du dir sparen können :c)
Google, erster Treffer:
https://docs.microsoft.com/de-de/dotnet/visual-basic/language-reference/ ...
Ein Verweis auf Google wird nicht gerne gesehen in einem Forum, aber, den ganzen Text und die Warterei hättest du dir sparen können :c)
Google, erster Treffer:
https://docs.microsoft.com/de-de/dotnet/visual-basic/language-reference/ ...
Und dir würde genauer Lesen mal etwas stehen ...
Verweist auf eine andere Datei, in der die Typen und Member im Quellcode beschrieben werden.
filename
Erforderlich. Der Name der Datei, die die Dokumentation enthält.
filename
Erforderlich. Der Name der Datei, die die Dokumentation enthält.
Gruß w.
Nein in dem File können nur Kommentare zu den Funktionen stehen kein Code ansich.
Zitat von @nagita:
Die Funktion habe ich in eine Klasse ausgelagert.
Leider funktioniert Rechtsklick auf Projekte > Referenz einfügen nicht.
Soll heißen, dass ich nichts in Visual Studio finde, wie ich Referenzen einfüge.
Meine Klasse heißt Funktionen.vb
Das war für c# aber vb ist es ähnlich einfach unter Hinzufügen ...Die Funktion habe ich in eine Klasse ausgelagert.
Leider funktioniert Rechtsklick auf Projekte > Referenz einfügen nicht.
Soll heißen, dass ich nichts in Visual Studio finde, wie ich Referenzen einfüge.
Meine Klasse heißt Funktionen.vb
Das ist ja auch normal. Man muss die Klasse vorher instanzieren wenn man sie nutzen will, wenn du das nicht willst musst du deine Funktionen als Shared (static in c#) markieren dann sind sie auch ohne Instanz direkt aufrufbar ... Grundlagen objektorientierte Programmierung .
Public Class Testklasse
Public Shared Function Hallo()
MsgBox("Hallo")
End Function
End Class
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Testklasse.Hallo()
End Sub
End Class
Deine Klasse "Funktionen" ist OOP und das sollte man heutzutage auch bevorzugt einsetzen, sofern keine triftigen Gründe dagegen sprechen. Lose Funktionen einzubinden wie du das mit deiner functions.php gemacht hast ist ein altes Entwicklungsmuster, es stammt aus der Anfangszeit von PHP und wird in der Form von .NET gar nicht unterstützt, wie du schon gemerkt hast. Eine Klasse Funktionen geht aber eher am Konzept vorbei. Die Klasse sollte eine definierte Funktion haben, was darüber hinaus geht kommt in eine neue Klasse. Ich empfehle dir daher, dich mit OOP als Konzept zu beschäftigen.
Grundsätzlich musst du auf Code verweisen den du einbindest - egal ob OOP oder prozedural. Visual Studio nimmt dir die Arbeit innerhalb des Projektes aber ab. Wenn du eine neue Klasse hinzufügst, wird die automatisch gelinkt. Verweise hinzufügen ist daher unnötig und wird nur gebraucht, wenn du externen Code (z.B. eine Bibliothek) einbinden möchtest. Wobei ein Paketmanager da für viele Fälle die bessere Wahl ist, da händische Verweise sehr starr sind (funktionieren nur bei dir).
OT: Ich würde dir C# empfehlen. VB.NET ist eingestampft. Damit neu anzufangen macht daher wenig Sinn, außer wenn man Legacy Codebasen hat. Und wenn du PHP bereits kannst, ist der Syntax von C# näher an PHP dran als bei VB.NET. Das Framework bleibt in beiden Fällen das Gleiche, es geht "nur" um die Sprache in der Ebene darüber.
Grundsätzlich musst du auf Code verweisen den du einbindest - egal ob OOP oder prozedural. Visual Studio nimmt dir die Arbeit innerhalb des Projektes aber ab. Wenn du eine neue Klasse hinzufügst, wird die automatisch gelinkt. Verweise hinzufügen ist daher unnötig und wird nur gebraucht, wenn du externen Code (z.B. eine Bibliothek) einbinden möchtest. Wobei ein Paketmanager da für viele Fälle die bessere Wahl ist, da händische Verweise sehr starr sind (funktionieren nur bei dir).
OT: Ich würde dir C# empfehlen. VB.NET ist eingestampft. Damit neu anzufangen macht daher wenig Sinn, außer wenn man Legacy Codebasen hat. Und wenn du PHP bereits kannst, ist der Syntax von C# näher an PHP dran als bei VB.NET. Das Framework bleibt in beiden Fällen das Gleiche, es geht "nur" um die Sprache in der Ebene darüber.
bin im Moment dabei, über Visual Studio mit VB.NET ein paar Anwendungen zu schreiben.
Wenn es wirklich Visual Basic als Sprache für die Zukunft bleiben soll, wäre ein Umstieg auf Mercury als Sprachimplementierung sicherlich sinnvoll, da Microsoft keine Unterstützung neuerer Plattformfeatures plant.
Future features of .NET Core that require language changes may not be supported in Visual Basic.