Wątek przeniesiony 2016-11-10 15:55 z C# i .NET przez ŁF.

zwracanie Exception

0

Cześć,

Czy mając kilka funkcji w osobnym pliku cs (klasie) mogę "zwrócić" do klasy w której jest ta funkcja użyta wyjątek ??

A łatwiej :)
Jakaś klasa:

Class1
{
     public string funkcja(string zmienna)
     {
        try
        {
                if(zmienna) return zmienna;
        }
        catch (Exception ex)
        {
                //jak zwrócić ex.Message ??
        }
     }
}

Klasa stronaWEB

public partial class stronaWEB : System.Web.UI.Page
{
        Class1 Klasa = new Class1();

        protected void Page_Load(object sender, EventArgs e)
        {
              txtPole = Klasa.funkcja(zmienna);
        }
}

P.S wiem, że powyższy kod nie wywali błędu (Exception), ale chodzi mi o zobrazowanie tego, co mam na myśli :)

0
using System;

public class Test {
	public static string Ping()  {
		try {
			throw new Exception("Pong");
		} catch(Exception ex) {
			return ex.Message;
		}
		return "";
	}
	
	public static void Main() {
		Console.WriteLine("Ping: " + Ping());
	}
}

http://ideone.com/rPaAtx
Ping: Pong

czyli zwyczajnie

Class1
{
     public string funkcja(string zmienna)
     {
        try
        {
                if(zmienna) return zmienna;
        }
        catch (Exception ex)
        {
-                //jak zwrócić ex.Message ??
+            return ex.Message;
        }
     }
}
3

Pewnie można, ale to zły pomysł.
Jak przewidujesz brak wartości lub problem z jej uzyskaniem to raczej zadeklaruj to jakoś w interfejsie funkcji a nie zwracaj jakieś śmieci (bo treść wyjątku dla kogoś kto się spodziewa np. imienia i nazwiska to - śmieci).

1 użytkowników online, w tym zalogowanych: 0, gości: 1