Enrutamiento ASP.NET MVC por ID de cadena?

En ASP.NET 2, ¿cómo creo una ruta que permita la búsqueda de un objeto (por ejemplo, un producto) mediante una identificación de cadena (por ejemplo, un código de producto)? La ruta para buscar el mismo objeto por su número entero (por ejemplo, ProductId) es automática, por lo que no sé cómo funciona.

La ruta automática por id es:

/Product/1

¿Cómo creo también una segunda ruta que usa una identificación de cadena?

/Product/red-widget

¿Y cómo lo hago para que ambas rutas estén disponibles?

Respuestas a la pregunta(1)

Su respuesta a la pregunta