I migrated an ASP.NET CORE MVC project from .NET Core 2.1 to .NET 6.
After making relevant changes, the project compiles and starts seemingly OK, but the views aren’t found.
Root path is set app.Environment.ContentRootPath = Directory.GetCurrentDirectory();
and the path to views seems to be correct. This is the error message that follows:
The Login.cshtml is in /Views/Account folder, and Build Action is set to Content.
5
Answers
Found a solution.
An outdated Razor package messed up the pipeline somehow. I'm not sure why.
Removing the Razor package solved the issue.
your account folder maybe missing in areas like
if it is ok then
in Startup.cs
in this method public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
paste this code
I had the same issue after migrating to .Net 6, and this is the solution that works for me. I checked the list of packages that I have and saw that Microsoft.AspNetCore.Razor.Design outdated version was still part of the project, then I removed it and the solution started working perfectly.
For my case, it worked after removing the package of Microsoft.AspNetCore.Mvc 2.2.0. Not sure why this version was still siting in the project after migrating from Net 5 to 6.
@OIbuoye answer worked for me. I also had to add the following to my Startup.cs. This was for a Web API that also has some Views for confirmation pages, errors pages etc…