Denkfehler! Hilfe! (nicht alle Codepfade geben einen Wert zurück)

exiter28

Erfahrenes Mitglied
Hallo,

könntet Ihr mir bei folgender Funktion weiterhelfen?
Ich komm grad nicht weiter.....
Fehlermeldung: nicht alle Codepfade geben einen Wert zurück
Die Rückgabe sollte 'filter' sein.

Danke Euch....

Code:
        public static string SetFilter(String line)
        {
            string l = line;
            string filter = "";
            int f = Convert.ToInt32(l.Length);

            string searchstr, temp;

            for (int i = 0; i < f; i++)
            {
                temp = Right(line, i);
                try
                {
                    searchstr = Left(temp, 1);
                    if (searchstr == "=")
                    {
                        filter = Right(line, temp.Length - 1);
                        searchstr = null; temp = null;
                        return filter;
                    }
                }
                catch { }
            }
            searchstr = null; temp = null;
        }
 

exiter28

Erfahrenes Mitglied
ok, ich hab´s:


Code:
        public static string SetFilter(String line)
        {
            string l = line;
            string filter = "";
            int f = Convert.ToInt32(l.Length);
 
            string searchstr, temp;
 
            for (int i = 0; i < f; i++)
            {
                temp = Right(line, i);
                try
                {
                    searchstr = Left(temp, 1);
                    if (searchstr == "=")
                    {
                        filter = Right(line, temp.Length - 1);
                        searchstr = null; temp = null;
                    }
                }
                catch { }
            }
            searchstr = null; temp = null;
            return filter;
        }
 

deepthroat

Erfahrenes Mitglied
Hi.

Du mußt dir überlegen was du zurückgibst wenn du in der Schleife keine Übereinstimmung findest.

Gib doch einfach null zurück falls die Schleife ohne Übereinstimmung beendet wird. Oder du wirfst eine Ausnahme wenn deiner Meinung nach immer eine Übereinstimmung gefunden werden müßte.

Gruß