16
votes

I'm currently using VS2017 for developing .NET Core MVC Web

When I tried to create a new Controller from Add > Controller, I got this error

Error

There was an error running the code generator: "The specified deps.json
[C:\Users\xxx\Documents\Visual Studio 2017\Projects\bin\MCD\Debug\netcoreapp1.1
\[project name].deps.json] does not exist"

When I explored the solution folder, I found that there are two folder in the bin directory, Debug and MCD.

bin
|
- Debug
 - netcoreapp1.1
  - ...
  - [project name].deps.json
|
- MCD <- this is where the scaffolding looks for deps.json

I noticed that I also got the same problem when debugging .NET Console app (which I created from dotnet new console cli command) from Visual Studio Code. The same problem faced in .deps.json could not be found

Are there any .NET Core configs that I missed? Or this is a bug in .NET Core? I remember I didn't configure anything prior from installing my .NET Core in VS2017

8
Does this project previously created with VS2015? Ever since I installed VS2017 my 2015 version doesn't work properly anymore.Hamid Mosalla
@HamidMosalla no, this project is purely generated on VS2017Muhamad Iqbal

8 Answers

15
votes

In my case, this error appeared after the VS update. Don't know why, but what I did:

  1. Go to your project folder and just remove the bin and obj folders.
  2. Rebuild your project.
  3. Add your new controller. It should work.

Perhaps it will help someone.

14
votes

Found the answer here : https://github.com/dotnet/coreclr/issues/113

Apparently, this is some kind of bug that appeared on HP computers. I'll quote from the GitHub issue :

they have an environment variable called Platform, set to MCD which is why you are seeing this error.

This cause .NET Core to look for the file at MCD folder of your bin, instead of your normal Debug file. All you have to do is delete the variable or set it to nothing

3
votes

The file VS 2017 is looking for in

[C:\Users\xxx\Documents\Visual Studio 2017\Projects\bin\MCD\Debug\netcoreapp1.1 [project name].deps.json]

seems to be found at

[C:\Users\xxx\Documents\Visual Studio 2017\Projects\bin\Debug\netcoreapp1.1 [project name].deps.json]

So I just copied the content from the second folder to the first and it worked. No need to change environment variables

2
votes
  1. dotnet tool uninstall --global dotnet-ef
  2. dotnet tool install --global dotnet-ef
  3. dotnet ef
  4. dotnet ef migrations --project YourProject.Data --startup-project YourProject.UI add InitialCreate
  5. dotnet ef database --project YourProject.Data --startup-project YourProject.UI update
2
votes

I had the problem with EF/add-migration in VS Comunity 16.9.3. My start project (bold in solution explorer) was set to one without EF. I switched that to the EF project and add-migration worked fine.

1
votes

I got the same error in visual studio 2019. I cleaned and rebuild the solution and the problem was resolved. I have an HP machine.

0
votes

I did have the same problem under VS2017. My solution was to delete the variable Platform in Environment Variables. Also your must reboot your VS2017.

0
votes

Also you can change the launch.json by adding the MCD folder to the string of the "program" argument