私は、次のコードを使用して、私のFormviewで削除例外を処理しています。問題は、エラーが発生した場合にユーザーに簡単な説明を提供したいが、簡単に行う方法が見つからないということです。私はASP.NETに慣れていないと言わなければならない。過去にはERROR_NOを使用してエラーをトラップしていましたが、ここで同等のエラーを見つけることはできません。私はe.Exception.Messageがエラー情報を与えるが、私はこれをユーザーに与えることができないことがわかります...ユーザーフレンドリーの例外メッセージを提供
EG:e.Exception.Messageは "DELETE文がREFERENCE制約と競合しました" FK_users_offices "競合は、データベース" xyz "、テーブル" dbo.Users "、列 'OfficeID'で発生しました。
この例外を特定して「このユーザーは存在するため、このOfficeは削除できません」というようなメッセージを表示する方法はありますか?例えば?
の背後にある私の関連するコードは次のとおりです。
protected void fv_OnItemDeleted(Object sender, FormViewDeletedEventArgs e)
{
if (e.Exception == null)
{
if (e.AffectedRows == 1)
{
lblMessage.Text="Record deleted successfully.";
}
else
{
lblMessage.Text = "An error occurred during the delete operation.";
}
}
else
{
lblMessage.Text=e.Exception.Message;
e.ExceptionHandled = true;
}
UserMessage.Visible = true; // Display Error message to user
}
http://stackoverflow.com/questions/8910197/user-friendly-error-messages-when-removing-row-with-foreign-key-reference-constrとhttp://stackoverflow.com/質問/ 7944559 /操作方法 - sqlexception-message-into-user-friendly-message –