Autor Beitrag
Spiritnight
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Mo 24.03.08 03:21 
Hallo

ich habe folgende Frage:
ich möchte eine Funktion in eine extra cs datei schreiben, natürlich so das man Hauptprogramm sie auch findet.

Ich würde mich über ein Simples Beispiel sehr freuen.

Mfg Martin
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 24.03.08 12:09 
Hallo und frohe Ostern,

Deine Frage berührt zwei Bereiche: "Funktion extra speichern" sowie "Hauptprogramm soll finden".

Zunächst einmal: wozu soll das gut sein?

Unter NET und C# gibt es keine "simplen Funktionen", sondern "nur Klassen" wegen des Prinzips der OOP. Alles, was geschieht, geschieht mit Objekten bzw. Instanzen von Klassen. Grundsätzlich gehört also eine bestimmte Funktionalität zu einer bestimmten Klasse und damit zu allen entsprechenden Objekten; in Ausnahmefällen kann eine Funktionalität auch zur Verfügung stehen unabhängig von einem konkreten Objekt - das sind dann statische Methoden bzw. statische Klassen.

Standardbeispiel für Letzteres ist die Math-Klasse. Sinnvoll ist es auch, die Einzelheiten der File-Klasse (statische Methoden für Dateien) und der FileInfo-Klasse (Eigenschaften und Methoden für eine spezielle Datei) zu vergleichen.

Zusätzlich gibt es noch die Möglichkeit der partial class, wie bei Formularen mit MainForm.cs und dem Designer-Code MainForm.Designer.cs. Zur Übersichtlichkeit kann man Methoden in weitere Teile auslagern; das geht nach dem gleichen Schema (wird aber relativ selten gemacht).

Zur Klärung Deines Klassenaufbaus empfehle ich Grundlagenliteratur, z.B. OpenBook C# ab Kap.6.

Auch der zweite Bereich "Hauptprogramm soll finden" gehört zu den Grundlagen. Jedes C#-Programm benutzt mehr als eine Klasse; weitere Klassen gehören also entweder direkt in die Assembly (Solution, Projekt), oder sie werden über eine eigene Assembly erstellt und dann über die Referenzen einbezogen. Durch "using (Namespace-Name)" und Aufruf der Klasse bzw. Erstellen einer Instanz kann dann damit gearbeitet werden.

Aber wie gesagt, das sind so elementare Grundlagen... Bitte befasse Dich zunächst intensiv selbst damit; für konkrete Nachfragen (mit konkreten Informationen) stehe ich gern wieder zur Verfügung.

Jürgen
Spiritnight Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Di 25.03.08 16:20 
Titel: re
Vielen dank für die Info

Mfg Martin