我做了登记表。创建帐户的某些功能必须是唯一的。例如用户名。它是在名为"userreg“的TextBox中键入的。我想创建自定义消息,如果重复的用户名是输入时,试图创建一个新的帐户。在本演示中,我将使用用户名Admin。
默认值: Message.Show(ex.Message)
I get:“username_UNIQUE”的重复条目“Admin”
所以我做了:
catch (Exception ex)
{
if (ex.Message == "Duplicate entry ''" + userreg_text.Text + "'' for key 'username_UNIQUE'")
{
MessageBox.Show("Username already exists");
}
}什么都没发生。没有显示消息。
任何解决办法都是很棒的。
发布于 2013-10-23 20:03:48
引发的异常具有以下Message
“username_UNIQUE”键的重复条目'Admin‘
您正在使用此"Duplicate entry ''" + userreg_text.Text + "'' for key 'username_UNIQUE'",它将生成以下内容:
“username_UNIQUE”的重复条目“Admin”
你在'Admin'上用了两次撇号。
用这个代替:
"Duplicate entry '" + userreg_text.Text + "' for key 'username_UNIQUE'"
正如上面Jonesy和me所说的那样,有更好的方法来处理这种情况。
例如,您可以在DB中搜索条目(在您的例子中是: username 'Admin'),如果返回值不是NULL,则让MessageBox显示。
https://stackoverflow.com/questions/19550643
复制相似问题