This post was most recently updated on August 24th, 2021.2 min read.
This post describes how to fix the “Could not load file or assembly ‘[assemblyname]’ or one of its dependencies. An attempt was made to load a program with an incorrect format.” error.
The solution described in this post shows you how to resolve the issue when you’re deploying from Visual Studio, but get the error “Could not load file or assembly or one of its dependencies” when deploying to IIS or when opening your website after the deployment.
This applies to your local development environment.
Especially while installing a new dev machine, and building your project for the first time, you may end up getting the following exception:
Could not load file or assembly ‘[assemblyname]’ or one of its dependencies. An attempt was made to load a program with an incorrect format.
No fear, though, as this is usually easily fixed. In quite a few cases, it’s simply a mismatch between architectures and easily changed.
The latter part of the error message should point you
Why do I think that’s the case? Well, see – by default, Visual Studio uses 32-bit version of IIS Express (Internet Information Services Express – the free lightweight web server that ships with some Windows versions and is useful for local development with Visual Studio) for your deployments. And if you’re building your solution in x64, running it in 32-bit IIS Express won’t work.
In case you know what you’re doing, it’s safe and easy to change this, though.
In my case, I was indeed building a 64-bit application. Therefore I also had to change the IIS to run in
Solution: Change the IIS Express to run in 64b
I’ll explain below, how to do this in 4 simple steps. Like, really simple.
Time needed: 2 minutes.
How to change IIS Express to run in 64-bit mode?
- You’ll need to enable 64-bit IIS Express from VS settings
This is easy, one-click configuration change, but it is hidden quite deep in the Options. First, open up your Visual Studio.
- Navigate to Visual Studio – Tools – Options – Projects and Solutions – Web Projects
Alternatively, use the search for and write “64 bit”.
- Select “Use the 64 bit version of IIS Express for web sites and projects”
This’ll look something like in the picture below:
IIS Express 64-bit version – how to fix the “Could not load file or assembly…” -error
- Hit “OK” to save your changes.
That’s it. 4 (or really more like 3) simple steps!
And you should be golden!
Let me know in the comments -section below whether it worked or not. It sure did for me :)
- System.Text.Json.JsonPropertyName not working for CosmosDb in .NET Core/5? - October 19, 2021
- Errors loading an assembly that’s using Microsoft Graph API - October 12, 2021
- ILogger binding suddely failing for Azure Functions – what to do? - October 5, 2021