¿Cómo puedo determinar si existe una conversión implícita en C #?

Tengo dos tipos, T y U, y quiero saber si un operador de conversión implícito se define de T a U.

Soy consciente de la existencia deIsAssignableFrom, y esto no es lo que estoy buscando, ya que no se trata de moldes implícitos.

Un poco de google me llevó aesta solución, pero en las propias palabras del autor, este es un código feo (trata de emitir implícitamente y devuelve falso si hay una excepción, de lo contrario es cierto ...)

Parece probar la existencia de un método op_Implicit con la firma correctano funcionará para tipos primitivos.

¿Existe una forma más limpia de determinar la existencia de un operador de conversión implícito?

Respuestas a la pregunta(3)

Su respuesta a la pregunta