Error: Could not load file or assembly on Linux - c#

I am using Ubuntu 20.04 and trying to run .NETCore Web App. I am using command
sudo /usr/bin/dotnet /var/netcore/publish/App.dll
where App.dll is Application.
I get an error:
Unhandled exception. System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Extensions.Hosting.Abstractions, Version=3.1.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The located assembly's manifest definition does not match the assembly reference. (0x80131040)
File name: 'Microsoft.Extensions.Hosting.Abstractions, Version=3.1.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
Any ideas?

Related

Replacing dotnet core binary with private

How do I replace a dotnet core binary with a private build of the same binary?
I have an application (that I own all the source code to) and I want to replace just a single dll with once that has a fix. Whenever I replace the binary I get the exception
Unhandled exception. System.IO.FileLoadException: Could not load file or assembly '<my dll>, Version=2020.3.1.0, Culture=neutral, PublicKeyToken=null'.
The located assembly's manifest definition does not match the assembly reference. (0x80131040)
File name: '<my dll>, Version=2020.3.1.0, Culture=neutral, PublicKeyToken=null'
at <call stack>
I've tried calling gacutil.exe -i but it didn't work.

Log4Net: Could not load file or assembly is thrown in local but not in others envs

I am facing a weird error in the local env, when I try to register my application as a service I am getting this error:
System.IO.FileLoadException: Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821'
But in the other envs like QA, STG, everything works fine, and the service is register.
Any idea of what is happening?

'Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

I am a newbie and just created a new project of type: ASP.NET Core Web Application (.NET Core) and let VS preload all the defaults. I changed nothing, except set index.cshtml the startup. It built ok, but has a run-time error of:
System.IO.FileNotFoundException occurred
HResult=0x80070002
Message=Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Call Stack (last item):
ntdll.dll!NtWaitForSingleObject() Unknown
What is happening here, and how can it be fixed?
Using Visual Studio Installer, selecting the Repair option solved the problem.

mod-mono-server4 assembly System.IO.FileNotFoundException

I serached but I didn't found how to resolve this problem. I have ASP.NET application with System.Web.DataVisualization.dll. Dll is in bin folder, simple ASP.NET apps are working but when I try to run this application I got error:
System.IO.FileNotFoundException Could not load file or assembly
'System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35' or one of its dependencies
also I have MONO_PATH=/usr/lib/mono/gac:/app_dir/bin

Passing the paths of nuget installed assemblies to mono runtime

I have Visual Studio project that I am trying to get running with Mono.
I could install all dependencies using
mono nuget.exe install
and compile my application using
mcs -r:RestSharp.105.2.3/lib/net46/RestSharp.dll \
-r:JWT.1.3.4/lib/3.5/JWT.dll \
-r:jose-jwt.2.2.0/lib/net461/jose-jwt.dll \
-r:Newtonsoft.Json.10.0.1/lib/net45/Newtonsoft.Json.dll \
Program.cs
Now I am trying to run the application using
mono Program.exe
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies.
File name: 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies.
File name: 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'
So how do you pass the path to the assemblies to the Mono runtime similar to the compiler?
I tried to set $MONO_PATH but this is not working and not recommended for Production.
The overall question how the mcs compiler and the mono runtime could get the information directly from the installed packages (using nuget.exe).

Categories

Resources