What you want is a Linq projection using a custom class. The custom class is sent into the view.
https://csharp-station.com/Tutorial/Linq/Lesson02
But a couple of other things here like understanding the MVC models like a viewmodel as opposed to the persistence model.
The custom class for the Linq projection would be the viewmodel.
https://deviq.com/terms/kinds-of-models
https://www.dotnettricks.com/learn/mvc/understanding-viewmodel-in-aspnet-mvc
You map persistence model object over to a viewmodel object and the viewmodel object is mapped to a persistence model object for data persistence with the database.
understand seperation of concerns.
https://en.wikipedia.org/wiki/Separation_of_concerns
https://www.c-sharpcorner.com/UploadFile/56fb14/understanding-separation-of-concern-and-Asp-Net-mvc/
As talked about with the subject on Understanding Models, keep the controller thin void of any database logic that should be in a class in the models folder with methods called upon by the controller.
Example of a MVC solution you can review implementing the things discussed. VM = viewmodel and DM = domain model. The example is doing CRUD with the database using EF sitting behind the WebAPI in the DAL.
Just know that the database logic belongs in a class in the Models folder not in the controller keep the controller thin.
https://github.com/darnold924/PublishingCompany
HTH