Hola!
Los que tenemos unos años en la espalda, seguro que todavía tenemos pesadillas con COM y sus Dlls. Este fabuloso mundo de referencias y entradas en el registro de Windows muchas veces nos hacía perder incontables horas intentando arreglar las mismas … que era como buscar una aguja en un pajar.
Lo bueno de esto, es que te obligaba a ser bastante ordenado con tus componentes COM, e inclusive he conocido a personas que se conocían los GUIDs identificadores de algunas clases DE MEMORIA !!!
Si bien .Net prometía acabar con este infierno, es muy fácil volver a caer en el mismo. Muchas veces este tipo de error no está atado a una tecnología sino más bien a una forma de trabajo un poco descuidada por parte de un developer.
Por ejemplo, veamos este fabuloso error con el que estoy peleando en estos momentos.
Error 7
Payload contains two or more files with the same destination path ‘System.Net.Http.Primitives.dll’.
Source files:
..\Dev\src\packages\Microsoft.Net.Http.2.1.10\lib\win8\System.Net.Http.Primitives.dll
..Dev\src\packages\Microsoft.Net.Http.2.2.18\lib\win8\System.Net.Http.Primitives.dll
El error nos dice que al momento de compilar una app, la misma no sabe de donde tomar la referencia a System.Net.Http.Primitives ya que en los packages NuGet de la solución hay 2 versiones 2.1.10 y 2.1.18.
La solución puede parecer muy simple, selecciónar el menú Manage NuGet Packages de la solución y ver que paquetes están duplicados. En la siguiente imagen vemos como el package Callisto tiene 2 versiones en los proyectos de la solución.
En nuestro caso, si seleccionamos la opción Updates podemos ver que el Package Microsoft.Net.Http está con la opción de actualizar
Cuando vemos la lista de proyectos en la solución, podemos ver en que proyectos se está utilizando este package, y en que proyectos hay que actualizarlo.
Y aquí lo ves … no todos los proyectos están actualizados a la última versión !!!
Así que toca actualizar los proyectos a la última versión del package y listo … ![]()
Saludos @ La Finca
El Bruno
Leave a comment