2011-07-19 9 views
0

ここに私のインターフェイスとそれは実装クラスファイルです。サービス機能を抱かせる間に、3つの例外を得る機会があります。WCFでカスタム障害契約を実装する方法は?

私はカスタムフォルト契約を使用してこれらを処理する必要があります。 1つの障害契約の下で3つの例外を実装する方法を教えてください。

インタフェース:

機能GETENTITIES()サービス・インターフェースを使用して文字列

クラスファイルとして:

Public Function GetEntities() As String 

    Dim result As String = Nothing 
    Dim ds As New DataSet 

    'Result string from Mapping file. 
    Dim resultFrmMap As String = ReadXML(entity) //Here need to handle exception. 

    Using con As New SqlConnection(System.Configuration.ConfigurationManager.AppSettings("MainDBConnectionString").ToString()) 
     con.Open() 
     Dim cmd As New SqlCommand(resultFrmMap, con) 

     Using Da As New SqlDataAdapter(cmd) 
      ds.Clear() 

      Da.TableMappings.Add("Table", "Data") 
      Da.Fill(ds) 
      cmd.Dispose() 
     End Using 

    End Using //Here need to handle exception. 

    result = GetXML(ds) //Here need to handle exception. 



    Return result 

End Function 

よろしく、JN

答えて

3

は、そのモデルのDataContractクラスを作成します。フォルトの詳細(FaultDetailsを今のところ呼び出すことができます)をFaultContract a 3つの例外をキャッチし、(FaultDetailsの)FaultExceptionをスローあなたGETENTITIES方法で今のサービス契約

でGETENTITIESメソッドに注釈を付けるttribute

こと、またはIErrorHandler

を使用して一元翻訳を扱います
関連する問題