¿Dónde convertir el modelo de negocio para ver el modelo?

En mi aplicación ASP.NET MVC, estoy usando patrones de unidad de trabajo y repositorio para el acceso a datos.

Utilizando la unidad de clase de trabajo y el repositorio definido en ella, estoy recuperando el conjunto relacionado de entidades en mi controlador. Con mi conocimiento de principiantes, puedo pensar en dos formas de obtener el modelo de negocio y convertirlo en modelo de vista.

El repositorio devuelve el modelo de negocio al controlador, este modelo que mapeado para ver el modelo, oEl propio repositorio convierte el modelo de negocio para ver el modelo y luego se devuelve al controlador.

Actualmente estoy usando el primer enfoque, pero el código de mi controlador comenzó a verse feo y largo para ver modelos con muchas propiedades.

Por otro lado, estoy pensando que, dado que mi repositorio se llama UserRepository (por ejemplo), debería devolver el modelo de negocio directamente, en lugar de algún modelo que sea útil solo para una sola vista.

¿Cuál de estos crees que es una mejor práctica para grandes proyectos? ¿Hay alguna forma alternativa?

Gracias.