Obtention de valeurs de key en double à partir de l'exception SQL

Comme vous le savez, SQL Server 2008+ nous donne la courtoisie de savoir quelles valeurs sont dupliquées en disant

La valeur de la key en double est (foo, bar)

dans le message SqlException . Normalement, j'obtiens ces valeurs en utilisant une regex et en obtenant datatables entre les parenthèses pour les montrer à l'user final.

Je me request; Y a-t-il un moyen plus élégant d'get ces valeurs?

Ne pensez pas qu'il y a une manière élégante, je le manipulerais comme vous le faites avec RegEx.

ceci est un échantillon … ceci obtient la valeur du champ spécifié , et compare avec textBox1 (ici l'user insère ce qu'ils veulent) …

 oleDbConnection1.open(); ssortingng query = "select * from database"; OleDbCommand comand = new OleDbCommand(query,oleDbConnection1); OleDbDataReader reader = comand.ExecuteReader(); reader.Read(); ssortingng value = reader.getValue(1).ToSsortingng(); reader.Close(); if(textBox1.Text == value) { MessageBox.Show("Data Dublicate","Error"); }