0

Web サービス (ASMX) からデータを取得しようとする WPF アプリケーションがあります。Web サービスが使用可能かどうかを確認するメソッドを Web サービス上に作成しました。ただし、返された例外をキャッチすることはできません。Web サービスでテスト メソッドを呼び出すコードは次のとおりです。

public bool TestConnection()
{
    try
    {
        return service.Test();
    }
    catch(Exception ex)
    {
        return false;
    }
}

service.Test() メソッドは、そこでリッスンしている Web サービスがないため、例外をスローします (実際のシナリオを模倣するように URL を変更しました)。それがスローする例外は、私の catch ステートメントによってキャッチされません。そして、私はなぜそうでないのか理解できません。これは私が得る例外です:

System.Windows.Markup.XamlParseException occurred
  Message='The invocation of the constructor on type 'GreenWebPlayerWPF.Window1' that matches the specified binding constraints threw an exception.' Line number '4' and line position '258'.
  Source=PresentationFramework
  LineNumber=4
  LinePosition=258
  StackTrace:
       at System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
  InnerException: 
       Message=Exception handled
       Source=Player
       StackTrace:
            at GreenWebPlayerWPF.Services.GWDSServiceProxy.Test() in C:\Subversion\GreenWeb 2.5\Version 2.5\GreenWebPlayerWPF\Services\Proxy\GWDSServiceProxy.cs:line 214
            at GreenWebPlayerWPF.HeartBeatService.Start() in C:\Subversion\GreenWeb 2.5\Version 2.5\GreenWebPlayerWPF\Services\HeartBeatService.cs:line 21
            at GreenWebPlayerWPF.Window1..ctor() in C:\Subversion\GreenWeb 2.5\Version 2.5\GreenWebPlayerWPF\Window1.xaml.cs:line 127
       InnerException: 
            Message=Service unavailable:Unable to connect to the remote server
            Source=Player
            StackTrace:
                 at GreenWebPlayerWPF.Services.GWDSServiceProxy.Test() in C:\Subversion\GreenWeb 2.5\Version 2.5\GreenWebPlayerWPF\Services\Proxy\GWDSServiceProxy.cs:line 206
            InnerException: 

例外はxaml例外であり、例外をキャッチする前に、例外が発生しているようです...

誰が何が起こっているのか知っていますか?

4

0 に答える 0