Methode multiple return values
Hallo Community,
ich habe wieder mal eine Frage und hoffe auf eure KnowHow!
Ich möchte eine Methode erstelle die mehr als ein Value zurückgeben kann und welche ich mit Intellisence auch auswählen kann. Etwa in dieser Form:
Wie müsste ich das anstellen? Mir fehlt da leider jeder Ansatz. Warum eigentlich? z.B. dafür:
Wäre Dankbar für ein paar Ansätze oder kleine Beispiele!
Grüße!
Mayho
ich habe wieder mal eine Frage und hoffe auf eure KnowHow!
Ich möchte eine Methode erstelle die mehr als ein Value zurückgeben kann und welche ich mit Intellisence auch auswählen kann. Etwa in dieser Form:
if(MyMetode() == Return.One | Return.Two & Return.Three)
{
...
...
}
Wie müsste ich das anstellen? Mir fehlt da leider jeder Ansatz. Warum eigentlich? z.B. dafür:
public static class Remove
{
public static bool This(string fileOrDirectoryPath)
{
bool toReturn = false;
if (File.GetAttributes(fileOrDirectoryPath) == FileAttributes.Directory && Directory.Exists(fileOrDirectoryPath))
{
Directory.Delete(fileOrDirectoryPath, true);
toReturn = true;
}
if (File.GetAttributes(fileOrDirectoryPath) != FileAttributes.Directory && File.Exists(fileOrDirectoryPath))
{
File.Delete(fileOrDirectoryPath);
toReturn = true;
}
return toReturn;
}
}
Wäre Dankbar für ein paar Ansätze oder kleine Beispiele!
Grüße!
Mayho
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 333172
Url: https://administrator.de/forum/methode-multiple-return-values-333172.html
Ausgedruckt am: 02.04.2025 um 04:04 Uhr
8 Kommentare
Neuester Kommentar

Moin,
erstell dir einfach ein Public enum in dem du die Werte angibst die zurückgegeben werden können, und gibst dann als Funktionsrückgabetyp die enum an.
In der Funktion gibst du dann jeweils einen der Enum-Werte zurück.
Alternativ geht natürlich auch eine struct wenn es komplexere Anforderungen sind.
Gruß p.
erstell dir einfach ein Public enum in dem du die Werte angibst die zurückgegeben werden können, und gibst dann als Funktionsrückgabetyp die enum an.
In der Funktion gibst du dann jeweils einen der Enum-Werte zurück.
public enum WeekDays {Mon, Tue, Wed, Thu, Fri, Sat, Sun};
public WeekDays WhatTheFuckWichWeekday(){
// blablabla
return WeekDays.Sat;
}
Alternativ geht natürlich auch eine struct wenn es komplexere Anforderungen sind.
Gruß p.

Dann gib einfach eine List<T> des Enums aus oder ein Object oder wie ich oben geschrieben habe eine struct, wo ist das Problem?? Ich seh da keins wenn mehrere Rückgabewerte gefordert sind.
Bei Fehlern macht man ja normalerweise ein throw mit einer custom exception.
Bei Fehlern macht man ja normalerweise ein throw mit einer custom exception.

Ok letzter Versuch, dann denke ich das was du suchst ist das [Flags] Attribut
http://stackoverflow.com/questions/8447/what-does-the-flags-enum-attrib ...
http://stackoverflow.com/questions/8447/what-does-the-flags-enum-attrib ...
[Flags]
public enum MyEnum {
IsDirectory = 1,
IsFile = 2,
NoFileOrDirectory = 4,
IsError = 8
}
public void EinTest(){
MyEnum test = MyEnum.IsError | MyEnum.NoFileOrDirectory;
if((test & MyEnum.IsError) > 0){
// ....
}