Multiple assemblies with equivalent identity have been imported: '<in-memory assembly>' and '<in-memory assembly>'
Asked Answered
F

1

14

I am getting the below error when I try to start the container. This is a simple asp.net vnext web application. I am trying to host this inside docker container in windows server 2016. Please advice.

System.IO.FileLoadException: Could not load file or assembly 'samplewebapplication' or one of its dependencies. General Exc
eption (Exception from HRESULT: 0x80131500)
File name: 'samplewebapplication' ---> Microsoft.Framework.Runtime.Roslyn.RoslynCompilationException: error CS1703: Multipl
e assemblies with equivalent identity have been imported: '<in-memory assembly>' and '<in-memory assembly>'. Remove one
of the duplicate references.
   at Microsoft.Framework.Runtime.Roslyn.RoslynProjectReference.Load(IAssemblyLoadContext loadContext)
   at Microsoft.Framework.Runtime.Loader.ProjectAssemblyLoader.Load(AssemblyName assemblyName, IAssemblyLoadContext load
Context)
   at Microsoft.Framework.Runtime.Loader.ProjectAssemblyLoader.Load(AssemblyName assemblyName)
   at dnx.host.LoaderContainer.Load(AssemblyName assemblyName)
   at dnx.host.DefaultLoadContext.LoadAssembly(AssemblyName assemblyName)
   at Microsoft.Framework.Runtime.Loader.AssemblyLoaderCache.GetOrAdd(AssemblyName name, Func`2 factory)
   at Microsoft.Framework.Runtime.Loader.LoadContext.LoadAssemblyImpl(AssemblyName assemblyName)
   at Microsoft.Framework.Runtime.Loader.LoadContext.TryLoadAssembly(LoadContext context, AssemblyName assemblyName, Ass
embly& assembly)
   at Microsoft.Framework.Runtime.Loader.LoadContext.ResolveAssembly(Object sender, ResolveEventArgs args)
   at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)
   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Runtim
eAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntro
spection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Runtime
Assembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntros
pection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, Ru
ntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIn
trospection, Boolean suppressSecurityChecks)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.AspNet.Hosting.Startup.StartupLoader.FindStartupType(String startupAssemblyName, IList`1 diagnosticMessa

Here is the Project.json files content.

{
"webroot": "wwwroot",
"version": "1.0.0-*",

"dependencies": {
"Microsoft.AspNet.Diagnostics": "1.0.0-beta6",
"Microsoft.AspNet.Mvc": "6.0.0-beta6",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta6",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta6",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta6",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta6",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-beta6",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta6",
"Microsoft.Framework.Logging": "1.0.0-beta6",
"Microsoft.Framework.Logging.Console": "1.0.0-beta6",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta6",
"AzureCloudTableContext": "2.2.0-beta",
"Sendgrid": "6.1.0",
"Microsoft.AspNet.WebPages": "3.2.3"
},

"commands": {
"web": "Microsoft.AspNet.Hosting --config hosting.ini"
},

"frameworks": {
"dnx451": {
  "dependencies": {
    "System.Net.Http.Formatting.Extension": "5.2.3.0",
    "System.Configuration.Abstractions": "2.0.2.24",
    "System.Net.Http": "4.0.1-beta-23225",
    "System.Runtime.Serialization.Primitives": "4.0.10-*",
    "System.Runtime": "4.0.20-beta-22816",
    "System.Collections": "4.0.0.0",
    "System.IO": "4.0.0.0",
    "System.Text.Encoding": "4.0.0.0",
    "System.Threading.Tasks": "4.0.0.0",
    "System.Collections.Concurrent": "4.0.0.0",
    "System.Linq": "4.0.0.0"
  },
  "frameworkAssemblies": {
    "System.Core": "",
    "System": "",
    "mscorlib": "",
    "System.ComponentModel.DataAnnotations": "4.0.0.0",
    "System.Data": "4.0.0.0",
    "System.Data.Services.Client": "4.0.0.0",
    "System.Data.Linq": "4.0.0.0",
    "System.Configuration": "4.0.0.0",
    "System.Security": "4.0.0.0",
    "System.Xml": "4.0.0.0",
    "System.Xml.Linq": "4.0.0.0",
    "System.Net": "4.0.0.0"
  }
}
},

"exclude": [
"wwwroot",
"node_modules",
"bower_components"
],
"publishExclude": [
"node_modules",
"bower_components",
"**.xproj",
"**.user",
"**.vspscc"
],
"scripts": {
"prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ]
}
}
Forerunner answered 22/9, 2015 at 5:31 Comment(1)
I want to attach the project.json for additional information. But I am not able to because of number of characters restriction. Please advice.Forerunner
F
0

All, After chasing it for couple of days and multiple experiments. I have narrowed down. The issue is I was trying to push the asp.net vnext application only with dnx451 framework. After including the dnxcore50 I was able to push the application into Docker Container inside Windows Server 2016.

"frameworks": {
   "dnx451": { },
    "dnxcore50": { }
  },
Forerunner answered 25/9, 2015 at 17:31 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.