Como capturar SqlException causada por deadlock?

Em um aplicativo .NET 3.5 / C #, eu gostaria de pegarSqlException massomente se for causado por deadlocks em uma instância do SQL Server 2008.

A mensagem de erro típica éTransaction (Process ID 58) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

No entanto, não parece ser um documentoErro de código para esta exceção.

Filtrando exceção contra a presença doimpasse A palavra-chave em sua mensagem parece uma maneira muito feia de atingir esse comportamento. Alguém sabe a maneira correta de fazer isso?

questionAnswers(3)

yourAnswerToTheQuestion