Ich habe gerade mein ASP.NET MVC/WebApi-Projekt von Microsoft.Practices.Unity 3.5.1404 auf 3.5.1406 aktualisiert (via nuget, gerade veröffentlicht). Danach erhalte ich diesen Compiler-Fehler:Der Typ 'IUnityContainer' ist in einer Assembly definiert, die nicht referenziert wird.
Error CS0012 The type 'IUnityContainer' is defined in an assembly that is not referenced. You must add a reference to assembly 'Microsoft.Practices.Unity, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Auf Zeilen wie:
GlobalConfiguration.Configuration.DependencyResolver =
new Unity.WebApi.UnityDependencyResolver(container);
Natürlich, ich bin Referenzierung nicht 3.0.0.0, aber 3.5.1.0. Also meine Annahme ist, dass die Unity.WebApi
Assembly gegen eine frühere Version der Microsoft.Practices.Unity
Assembly kompiliert wurde. Theoretisch müssen Sie, dass bei einer Montage Umleitung beheben mögen, etwa so:
<dependentAssembly>
<assemblyIdentity name="Microsoft.Practices.Unity" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.5.1.0" newVersion="3.5.1.0" />
</dependentAssembly>
jedoch nicht zu funktionieren scheint.
Irgendwelche Vorschläge?
und 'Unity.Mvc' anstelle von' Unity.Mvc4'. Genaue Schritte in Rob beantworten unter http://Stackoverflow.com/a/35043239/1011959 –