Visual Studio Solution Explorer not showing projects in solution - c#

When I try to right click (in the Solution Explorer) and add the existing project to solution, I get the error:
The .NET Core SDK cannot be located. .NET Core debugging will not be enabled. Make sure the .NET Core SDK is installed and is on the path
I checked here (where they get the same error on VS Code) and tried repairing, installing, reinstalling Visual Studio and my .Net 6.0 and 7.0 SDKs. Made sure to install the SDKs even with VS not open, even after a fresh restart. Nothing worked. Plus, some of those solutions seemed specific to VS code, not VS Studio.
Not sure how relevant this detail is, but this my first attempt at installing Visual Studio on this computer.
The problem persisted regardless of project type (WPF and Console were attempted), .Net version (tried making .Net 6.0 and 7.0 apps, which are the 2 sdks I've got installed), and whether or not I indicated I wanted the project and solution in the same directory.
Those were my guesses, and nothing's worked.
Here's what it looks like when I create a new project:

Open visual studio installer and make sure you have installed .Net Framework Developer correctly.
Select .Net 6.0 on this page
Can you create a wpf .net 6 project according to this flow.
If it still doesn't work, please try the repair button in the installer.

The problem turned out to be that the SDKs weren't ordered correctly in the environment variables. C:\Program Files (x86)\dotnet was listed before C:\Program Files\dotnet. I found the solution here.
Not exactly a duplicate issue though, as issues were sort of different, but had the same fix.

Related

Visual Studio 2019 shows an empty solution after creating a .NET Core project

When I create a new .NET Core project in Visual Studio 2019, it shows only the solution file. Other files are not showing and also I am not able to debug or the project.
I've also run into this problem and after two days of searching forums and reading .NET documentations, I finally managed to find the solution.
The problem is that Visual Studio cannot find the proper SDK version. There might be a few reasons for this, but first of all, check if you have any SDK installed:
Open the Command Prompt:
Start Menu > Visual Studio 2019 > Developer Command Prompt for Visual Studio 2019
Run the command: dotnet --info
Case 1:
The .NET SDKs installed: section says that you have no SDKs installed.
-OR-
A .NET SDK is installed but not for the right architecture (this was my case), meaning that you had installed x86 version instead of x64.
Solution:
Uninstall all versions of .NET Core SDKs and Runtimes, then download and install the latest x64 SDK and Runtime version from Microsoft's webpage.
Case 2:
A .NET SDK is installed but the referenced SDK version in the current project's .csproj file does not match the installed version nor the one specified in the global.json (if exists).
Solution: Edit the .csproj file, so that the SDK versions match.
If you have or need a global.json file, make sure you set its content properly. You can read more about it here.
Finally
Don't forget to open Visual Studio, create a new e.g. Console Application and see if the Solution's files appear in the Solution Explorer window (they should). Note that existing projects may still not be working properly because their .csproj file might have wrong SDK reference - if so, you have to fix them manually.

VC2019 Web API not allows .NET CORE 5.0 [duplicate]

I've installed the preview of .NetCore 3.0 and tried to run the blazor template Blazor (ASP.NET Core hosted) in Visual Studio 2019:
The error that occured, was the following:
NETSDK1045 The current .NET SDK does not support .NET Core 3.0 as a target. Either target .NET Core 2.2 or lower, or use a .NET SDK version that supports .NET Core 3.0.
During these days I had to overcome this issue on a number of different development machines/containers: eventually, I found no less than 6 different reasons that could cause this kind of error:
Missing .NET Core 3 SDK (x86 or x64)
.NET Core SDK preview support not enabled in VS2019
VS2017 instead of VS2019
Wrong SDK path in PATH environment variable(s)
Wrong SDK path in MSBuildSDKsPath environment variable(s)
Wrong SDK version in the project's global.json file
The workarounds for those scenarios are pretty easy to understand, you basically have to either install the proper SDK or remove the "offending" SDK reference(s). However, I did my best to document them all in this post on my blog.
Following this comment, I managed to resolve the problem by installing the x86 version of the .NET Core 3.0 additionally to the x64 version. The build worked after restarting Visual Studio (2019).
for me the solution was removing a path variable MSBuildSDKsPath - Because of exploring preview sdks's i at some point declared that variable to fix another sdk bug - seems like that force sets the used version. So in my case it was set to 3.0.100 and resulted in errors when attempting to use 3.1.300
I got the same error and resolve it with checking the option "Use previews of the .NET Core SDK (requires restart)".
Open Tools > Options and try looking at "Preview Features" or ".Net Core" depending of your Visual Studio version.
Watch out of VS updates, they can disable it.
This is a very hacky-feeling solution but at least it worked. Let's say you've installed the SDK for 3.0.100-rc1-014190. It shows up in dotnet --list-sdks as expected but still doesn't seem to be detected by Visual Studio, and you get the same NETSDK1405 error when trying to build or test anything from the dotnet CLI.
Look in your dotnet SDK install directory (usually C:\Program Files\dotnet\sdk). You should see your preview SDK in there. Either create a copy or rename the existing folder to remove the preview version suffix. For example 3.0.100-rc1-014190 would instead become 3.0.100, like so:
Doing this made .Net Core 3 preview support finally work in VS2019 Preview 4 and the dotnet CLI for me.
For me it was as simple as enabling the preview in Visual Studio 2019. Unfortunately most posts that show how to do this are I believe out of date. I finally came across this stack overflow post How to enable .NET Core 3 preview SDK in VS2019? They moved the check box and it was not on by default for me.
This was a frustrating issue to track down and after doing all of the updates to VS and still not being able to install I tracked it down to an environment variable. Try removing MSBuildSDKsPath and see if that fixes your issue.

Downgrading .NET Framework causing packages issues

I am working on a project on TFS. This project was created on someone else's PC on VS 2017 and the newest .NET framework and published to Azure.
I got the project on my PC, I have VS 2015 and I had to change the .NET framework of the project to 4.6. Everything was fine, I could make changes to the project and commit.
But when I tried to publish to Azure from my PC, I got a very unclear error:
Publish Failed
Connecting to ...
Looking for solutions online, I had to downgrade the version of the package Microsoft.Net.Compilers from 2.6.1 to 2.4.0 . And that worked !
I turned off my PC. Next day when I opened the project and ran it, I got this error locally :
Could not load file or assembly 'Microsoft.ApplicationInsights, Version=2.6.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
I tried to uninstall Microsoft.ApplicationInsights and reinstall it with version 2.6.1 , but it says i need a newer version of nuget.
I am not sure how to proceed from here. I already installed all the updates in my Tools -> Extensions -> Updates but nothing changed.
Why are all these things happening to my project and how can i fix it?
PS: upgrading my VS to 2017 is currently not an option due to many exterior reasons.
Thank you.
I've gotten that error locally as well and was actually able to resolve by manually adding the file to my project folder, may be worth a shot.
Downgrading .NET Framework causing packages issues
Just like Hans said nuget packages change quite rapidly, which often require the latest version NuGet. Some new features in the package only supported by the newer NuGet (like PackageReference) or some issues fixed on the newer version. For example, install package Microsoft.EntityFrameworkCore.SqlServer 2.1.1 on Visual Studio 2015, which requires NuGet client version '3.6.0' or above.
So, the workaround for this issue is create a new project with Visual Studio 2015, copy the code from previous projects, then add those nuget package one by one to find out the reason why it needs the newer version nuget.
However, I want to talk more over about this question is that the best way to resolve this issue is to install Visual Studio 2017 alongside Visual Studio 2015. As we known, using a lower version of the Visual Studio and .net framework to open a higher version of the Visual Studio and .net framework is not recommended, it will always bring a lot of incompatibility errors and some other weird issues. Since upgrade your Visual Studio to 2017 is currently not an option due to many exterior reasons, so I suggest that you can install Visual Studio 2017 alongside Visual Studio 2015. Besides, developing the same project with different versions of Visual Studio and submitting it to the TFS server may bring many unpredictable risks.
Hope this helps.

Updating Visual Studio and Core 2.0

I am trying to update my project to .net core 2. But I am facing issues I have no option in the target framework to change to
I installed the .net core 2 sdk from the download site
I also tried the suggestion here but did not work for me
.NET Core 2.0 missing from my Visual Studio
But when I try to modify visual studio to install release 3 i get the following
this happens even if I click the installer and i DO NOT no why I tried various suggestions Including delete this folder
Try deleting %LocalAppData%\Microsoft\VisualStudio\Packages_Channels
But it does not exist on my pc I am running windows ten by the way
As I can see there is global.json file in your project. Try changing sdk version to 2.0.0

vs2010 .net 4.0 to .net 3.x

I would like to know how can i transform a .NET 4.0 VS 2010 C# project intro a 3.x .NET version? I just made an app for someone and i don't think he has the .NET 4.0 platform installed . Any ideas?
Change project target framework to 3.5 might work unless your using some 4.0 specific things.
Or make sure that the user has 4.0 installed if possible.
No, you cannot do it directly. You have three options:
create a new project file that targets the 3.x framework and add the files to it (make sure they are not using v4.0 features)
get your friend to install the v4.0 framework - it is roughly 50MB, not really that big
as Jon pointed out, just retarget your project to v3.x in your VS2010 IDE (in the solution explorer, right click on your project, select Properties, go to the Application tab, use the Target framework dropdown)
if you have completed a reasonable amount of code it may be simpler to just install the new version of the framework.
Change the target framework.
But if you want to use it in Visual Studio 2008 (the URL of your question suggests it), then:
Open the sln file with notepad, and change the following line:
Microsoft Visual Studio Solution File, Format Version 11.00
to:
Microsoft Visual Studio Solution File, Format Version 10.00
The easiest way is to create a new Visual Studio 2008 project with your requirements (.NET version, namespace, etc) and just copy all sources from your Visual Studio 2010 project to that project. The solution explorer has an option that shows all files in your project that are not included, and you can include these files in your project by right clicking on the files and selecting "Include in project." Then just compile and see what problems you get.
Use the "Properties" from the project and select the version of the framework in "Target Framework"; that is required.

Categories

Resources