Error installing Entity Framework package - entity-framework

I got a strange error when trying to install the latest version of EntityFramework(4.1.10715.0) from the package manager:
The 'schemaVersion' attribute is not declared.
How can I solve this?

Try to install the latest NuGet version

Related

Why can't I install Microsoft.EntityFrameworkCore.Sqlite?

I am following this tutorial:
https://learn.microsoft.com/en-us/ef/core/get-started/overview/first-app?tabs=visual-studio
I am immediately stopped because I can not complete the following command:
Install-Package Microsoft.EntityFrameworkCore.Sqlite
This is the error:
Could not install package 'Microsoft.EntityFrameworkCore.Sqlite.Core 7.0.0'. You are trying to install a package into a project that targets '.NETFramework,Version=v4.7.2', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.
I am attempting to learn how to use the Entity Framework and so I don't know much regarding this. Any advice would be helpful even if it's a link to something I need to read.
About the tutorial
The tutorial is about .netCore but in the error message you can see that you created a .netFramework project '.NETFramework,Version=v4.7.2'.
Create a new console application, but don't select projects that have (.NET Framework) in the description.
About the Sqlite package (only if continue the practicing with .netFramework)
The command Install-Package Microsoft.EntityFrameworkCore.Sqlite will try to install the last version. Currently, the last version is 7.0.0. This version only work with .NET 6.0.
You can check existing .net versions right here
So, you need to specify the version. The version for .NET 4.7.2 is the 3.1.31.
Install-Package Microsoft.EntityFrameworkCore.Sqlite -Version 3.1.31
Nuget Sqlite package info here

'AutoMapper' already has a dependency defined for 'Microsoft.CSharp'

When I am trying to install 'AutoMapper' it gives me an error "'AutoMapper' already has a dependency defined for 'Microsoft.CSharp'" in VS2010.I am trying to install Automapper latest version AutoMapper.6.1.0. I have already tried the following things but it's not worked for me.
1) Updated Nuget Package manager with latest version 2.8.60318.667
2) I have also manually deleted refernece from Automapper nuspec XML file
Please any one suggest me what can be issue for this.
After installing an older version of the Automapper its work for me. try to use Install-Package Automapper -Version 4.0.4 command from package manager console.

Nuget "Older to New" Update Failed

I want to update project for Asp.NET Web Api 2.2 (My project is Web Api 1.0). But Nuget doesn't update all package and i didn't find this problem's solve.
Can you help me for this problem ?
Failed Text:
Updating 'Microsoft.AspNet.WebApi.Core 4.0.30506.0' to 'Microsoft.AspNet.WebApi.Core 5.2.0' failed. Unable to find a version of 'Strathweb.CacheOutput' that is compatible with 'Microsoft.AspNet.WebApi.Core 5.2.0'.
It looks like the current build of Strathweb.CacheOutput (0.5.0) package is fixed to WebApi 4.0.30506.
You have 2 options:
Contact the package owner and ask them to allow the package to work with newer versions of WebApi
Use the command line for NuGet in Visual Studio to force the package update by specifying the -IgnoreDependencies argument
Either way, you will need a binding redirect for Microsoft.AspNet.WebApi.Core 4.0.30506.0 -> 5.2.0, depending on which option you use, NuGet may add this to your web.config for you.

Nuget package RavenDB.Embedded: Unable to find a version of 'RavenDB.Database' that is compatible with 'System.Spatial 5.0.2'

In a new project when I try to add the NugetPackage : RavenDB.Embedded
I have the following error :Updating 'System.Spatial 5.2.0' to 'System.Spatial 5.0.2' failed. Unable to find a version of 'RavenDB.Database' that is compatible with 'System.Spatial 5.0.2'.
i think this is a nuget bug. try using:
Install-Package RavenDB.Embedded -DependencyVersion Highest

How can I install an older version of a package via NuGet?

I want to install an older version of a package (Newtonsoft.Json). But NuGet rolls back:
PM> Install-Package Newtonsoft.Json -Version 4.0.5
Successfully installed 'Newtonsoft.Json 4.0.5'.
Install failed. Rolling back...
Install-Package : Already referencing a newer version of 'Newtonsoft.Json'.
How can I do it?
Try the following:
Uninstall-Package Newtonsoft.Json -Force
Followed by:
Install-Package Newtonsoft.Json -Version <press tab key for autocomplete>
As of NuGet 2.8, there is a feature to downgrade a package.
NuGet 2.8 Release Notes
Example:
The following command entered into the Package Manager Console will downgrade the Couchbase client to version 1.3.1.0.
Update-Package CouchbaseNetClient -Version 1.3.1.0
Result:
Updating 'CouchbaseNetClient' from version '1.3.3' to '1.3.1.0' in project [project name].
Removing 'CouchbaseNetClient 1.3.3' from [project name].
Successfully removed 'CouchbaseNetClient 1.3.3' from [project name].
Something to note as per crimbo below:
This approach doesn't work for downgrading from one prerelease version to other prerelease version - it only works for downgrading to a release version
I've used Xavier's answer quite a bit. I want to add that restricting the package version to a specified range is easy and useful in the latest versions of NuGet.
For example, if you never want Newtonsoft.Json to be updated past version 3.x.x in your project, change the corresponding package element in your packages.config file to look like this:
<package id="Newtonsoft.Json" version="3.5.8" allowedVersions="[3.0, 4.0)" targetFramework="net40" />
Notice the allowedVersions attribute. This will limit the version of that package to versions between 3.0 (inclusive) and 4.0 (exclusive). Then, when you do an Update-Package on the whole solution, you don't need to worry about that particular package being updated past version 3.x.x.
The documentation for this functionality is here.
Now, it's very much simplified in Visual Studio 2015 and later. You can do downgrade / upgrade within the User interface itself, without executing commands in the Package Manager Console.
Right click on your project and *go to Manage NuGet Packages.
Look at the below image.
Select your Package and Choose the Version, which you wanted to install.
Very very simple, isn't it? :)
Another more manual option to get it:
.nuget\nuget.exe install Newtonsoft.Json -Version 4.0.5