Hallo liebe Community!
Ich habe derzeit das Problem, das keine Exceptions weiter getriggert werden bei einem WebService. Ich kann mir jedoch nicht erklären warum.
// Initialize servicehost with with this as singletoninstance
_serviceHost = new WebServiceHost(this);
var endpoint = _serviceHost.AddServiceEndpoint(service,
new WebHttpBinding(WebHttpSecurityMode.None),
new Uri(game.BaseAddress, name));
// Enable the help page for service
endpoint.Behaviors.Add(new WebHttpBehavior {
HelpEnabled = true, FaultExceptionEnabled = true });
/// <summary>
/// The ITestService Interface
/// </summary>
[ServiceContract]
public interface ITestService
{
// --------------------------------------------------------
// Interface Functions
// --------------------------------------------------------
[OperationContract]
[WebGet(UriTemplate="/Greeting?name={name}",
RequestFormat=WebMessageFormat.Json,
ResponseFormat=WebMessageFormat.Json)]
[Description("Returns a simple greeting text with your name.")]
String Greeting(String name);
} // interface ITestService
public String Greeting(String name)
{
throw new Exception("ex");
return "Hello " + name + ", welcome to Nations War! " +
"You are visitor number " + _counter++;
} // Greeting
Wenn ich jetzt Greeting aufrufe stürzt die Anwendung ab mit einer nicht behandelten Fehlermeldung, jedoch müsste doch der WebService so etwas abfangen und dem User schicken?
MFG Wolf
Wer zuerst kommt malt zuerst, wer danach kommt malt drüber! 😁
Hallo,
ich kann mir durchaus vorstellen, dass das bei einem self-hosted Webservice schon seine Richtigkeit hat wie Du's beschreibst.
Wenn ein Webservice vom IIS gehostet wird, ist das was anderes, da kann dann der IIS noch den Fehler fangen und an den Client schicken. Sicher bin ich mir aber so spontan nicht.
Gruß, MarsStein
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Hallo!
Manchmal ist es einfacher als man glaubt 😃 Man muss lediglich die Anwendung weiter ausführen, wenn Visual Studio eine unbehandelte Fehlermeldung wirft. Anscheinend wird der Fehler dennoch abgefangen wie erhofft.
MFG Wolf
Wer zuerst kommt malt zuerst, wer danach kommt malt drüber! 😁