質問

まず、私の投稿を読んで時間を割いてくれてありがとう。一部の人にとっては、初心者のケーキかもしれない質問があります。

エンティティフレームワークを使用してデータベーステーブルにデータを追加しています。重複したプライマリキーを追加すると、innerexception.messageの例外が得られます。

ただし、私がやりたいのは、エンドユーザーにこのエラーメッセージを言い換えることですが、この正確なメッセージをテーブル名と列名で保存して、後でログに保存することです。基本的に、エラーメッセージを「学生識別番号の重複エントリを持つことはできません。新しい値を入力してください」に言います。

これどうやってするの?

System.data.updateExceptionから継承し、Innerexception.messageが読み取るものを確認するためにIFチェックを配置してから、それに応じて変更しようとしました。それはうまくいきませんでした。

ありがとう、

役に立ちましたか?

解決

これはあなたが望むことをするだろうと思います。

        Try
            'your code
        Catch ex As Exception
            'store the ex.Message where you want

            Throw New Exception("Your custom message here.")
        End Try

例:

Private Sub uiFunction()
    Dim errorMessage As String
    Try

        'a call to a BLL function/sub that could cause an exception
    Catch ex As Exception
        errorMessage = ex.Message() 'ex.Message() = "Your custom message."
    End Try
End Sub

Public Sub BLLFunction()
    Try
        'run your code that could cause an exception
    Catch ex As Exception
        Throw New Exception("Your custom message.")
    End Try
End Sub
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top