[ Valerij Zajcev @ 24.11.2010. 09:32 ] @
Da li ce ovako napisana f-ja da vraca vrednosti iz catch-a ili ce uvek vracati '1' bez obzira i ako pukne?
Code:

 try
            {
                // nesto sto moze da pukne
            }
            catch (DataPortalException ex)
            {                
                if (ex.Message.Length > 50)
                    return -1;
                else
                    return -1;
            }
            catch (Exception ex)
            {                
                if (ex.Message.Length > 50)
                    return -2;
                else
                    return -2;
            }

            return 1;
[ Boris B. @ 24.11.2010. 09:56 ] @
Nece uvek vracati 1, vratice vrednost prvog "return"-a na koji naleti, C# return je uvek momentalni izlaz iz metoda. Mozda jedino te buni ako si pre radio u npr. Paskalu gde setovanje Result promenljive ne znaci izlaz iz funkcije.

BTW nadam se da je ovaj "svi putevi vode u Rim" konstrukt (if uslov return -1 else return -1) samo demonstracija a ne i pravi kod.

[ markoco @ 25.11.2010. 13:21 ] @
Broj 1 (jedan) ce vracati samo ako try prodje bez greske. A ostalo zavisi od toga koji Exception je "bacen" ... Tj. ako u kodu imas gresku vezanu za "DataPortal" vratice ti -1, a ako je greska globalna vraca ti broj -2.

BTW, kao sto je Boris B. rekao, vratice prvi "return" na koji naidje jer je to komanda za izlazak.