Let's look at the default folder structure for an ASP.NET MVC application, which is as follows:
-App_data -Content -Controllers HomeController.cs -Models AccountModels.cs -Scripts -Views
Where is the ideal location to store the Entity Framework Data Model (EDMX) file, I wonder? Is it the Models folder? Yes, we are aware that a decent approach is to create a new project and refer to it in the MVC application, but let's ignore this for the time being.
It ought to be a component of the Model for a little project. The repository and its accompanying model may be in a different assembly for a bigger product.
It's questionable, but I'd give the Models folder a +1.
The only other option would be App_Data, but it is usually reserved for file-based databases (like SQL Server CE.MDF) and files that you don't want IIS to serve.
The EDMX belongs in the Models folder since it is a abstraction of the database.
You should definitely migrate your EF Model into another project if the project expands. Make your Controllers access the EDMX via Repository/Interfaces to avoid this in the future. That way, all you'll need to do to transfer the DAL to a new project is add the reference and the using lines.