ASP.NET MVC: Enlace de un tipo complejo a un Select

stoy tratando de averiguar si hay soporte integrado para vincular tipos complejos para formar elementos.

Para usar una situación hipotética común: tengo una entidad de Producto que pertenece a una Categoría; los modelos se ven así:

public class Product
{
    public int ID { get; set; }
    public string Description { get; set; }
    public Category Category { get; set; }
}
public class Category
{
    public int ID { get; set; }
    public string Title { get; set; }
}

Crear un formulario para hidratar una nueva entidad que solo contiene tipos de valores simples es agradable y simple utilizando el marco ASP.Net MVC, por ejemplo

public ActionResult Create(Product product);

¿Pero qué pasa con el escenario anterior donde sus entidades contienen otros tipos complejos? ¿Existen mecanismos integrados para vincular un IEnumerable <T> a una lista desplegable y luego hidratando automáticamente la @ correcT cuando se envía el formulario?

Sería bastante trivial hacerlo de forma manual, solo estoy tratando de determinar lo que puedo tener de forma gratuita desde el primer momento.