Could not load file or assembly 'WebMatrix.Data`
Solution 1
Go into: Tools > NuGet Package Manager > Package Manager Console
And run the following command:
PM> Install-Package Microsoft.AspNet.WebPages.Data
Solution 2
This is what worked for me. Took weeks to figure it out.
Make sure your target framework to what you want it to be (I had 4.6.1
).
Go into: Tools > NuGet Package Manager > Package Manager Console
and do the following commands.
Uninstall-Package Microsoft.AspNet.WebHelpers
Uninstall-Package Microsoft.AspNet.WebPages.OAuth
Uninstall-Package Microsoft.AspNet.WebPages.WebData
Uninstall-Package Microsoft.AspNet.WebPages.Data
Install-Package Microsoft.AspNet.WebPages.Data
Install-Package Microsoft.AspNet.WebPages.WebData
Install-Package Microsoft.AspNet.WebPages.OAuth
Install-Package Microsoft.AspNet.WebHelpers
Hope this helps anyone that tried the other solutions with no luck.
Solution 3
This is actually a legacy library. You should instead install Microsoft.AspNet.WebPages.Data if you are upgrading from MVC 4 to 5.
PM> Install-Package Microsoft.AspNet.WebPages.Data
Solution 4
This works as well
Update-Package Microsoft.AspNet.WebPages.Data
user3128303
Updated on September 05, 2020Comments
-
user3128303 over 3 years
I updated MVC4 to MVC5. When you run the application I got an error that I don't have
WebMatrix.Data
. I installed itPM> Install-Package WebMatrix.Data
. Now when you start getting in the browser:Could not load file or assembly 'WebMatrix.Data, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' or one of its dependencies. Located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Anyone know how to fix this?
Package Manager Console Log
Attempting to resolve dependency 'Microsoft.AspNet.WebPages.Data (≥ 2.0.20710.0)'. Installing 'WebMatrix.Data 2.0.30506.0'. You are downloading WebMatrix.Data from Microsoft, the license agreement to which is available at http://www.microsoft.com/web/webpi/eula/aspnetcomponent_rtw_enu.htm. Check the package for additional dependencies, which may come with their own license agreement(s). Your use of the package and dependencies constitutes your acceptance of their license agreements. If you do not accept the license agreement(s), then delete the relevant components from your device. Successfully installed 'WebMatrix.Data 2.0.30506.0'. Adding 'WebMatrix.Data 2.0.30506.0' to xxx. Successfully added 'WebMatrix.Data 2.0.30506.0' to xxx.`
Piece of code Web.config
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780ccd10d57b246" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Microsoft.AspNet.Identity.Core" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="WebMatrix.WebData" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="WebMatrix.Data" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" /> </dependentAssembly> </assemblyBinding> </runtime>
-
Anders Juul about 9 yearsyup that did it for me -- had to change to copy-local for one of the references, but i'm up and running with my seeding :D -- thanks!
-
Hunter-Orionnoir about 8 yearsI had shared dependent projects relying on the older version. I had to sweep through all the references and update to get it to work... which forced my hand to upgrade a site from MVC4 to 5 on all my sites... Knowing this ahead of time I might have done this differently...
-
MasterKitano over 7 yearsGreat solution, thx bro! I had no luck with the other solutions, but this really helped me :)
-
Coder about 7 yearsExplain your answer? Why the program in the initial question is failing?
-
Shadab Ahmed about 6 yearssee this line from the config file <assemblyIdentity name="WebMatrix.WebData" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> it says new version is 3.0.0.0 but installed version is not matching it so they need to be in sync.
-
Yusha almost 6 yearsI installed some random NuGet package and got the same error as the OP. I installed this weird package and it fixed the issue. Why is this even an issue in the first place? Like how does this error come about?