![Ventanas al vino | Obteniendo la excepción "no se pudo cargar el archivo o el ensamblado [etc]"](https://rvso.com/image/1566077/Ventanas%20al%20vino%20%7C%20Obteniendo%20la%20excepci%C3%B3n%20%22no%20se%20pudo%20cargar%20el%20archivo%20o%20el%20ensamblado%20%5Betc%5D%22.png)
Este caso implica escribir un programa que eventualmente usará Mono, pero hasta entonces usará Wine como sustituto.
Actualmente, hay un problema con una referencia particular:
No se pudo cargar el archivo o ensamblado Microsoft.Extensions.Logging.Abstractions.dll 'versión=1.0.0.0 [etc]' o una de sus dependencias. La definición del manifiesto del ensamblado ubicado no coincide con la referencia del ensamblado
Hasta ahora, con mis intentos, el uso de la redirección de enlace de ensamblaje con esta referencia no ha resuelto esto; incluso cambiar el número de versión al que se hace referencia a 1.0.0.0 arroja que la versión 2.1.0.0 no se puede cargar en su lugar.
Volver a compilar el programa después de eliminar la carpeta /bin y actualizar las referencias usando Nuget no resolvió el problema.
Funciona en el entorno nativo de Windows, por lo que parece específico de Wine, ¿quizás?
Respuesta1
Actualizar
En esta circunstancia particular, el uso de un nuevo prefijo Wine con una instalación limpia de ciertos componentes ayudó winetricks
a resolver el problema.
Pasos adicionales
En conjunto, antes de usar un nuevo prefijo, como se menciona en la pregunta, se actualizaron las referencias. Además, Assembly Binding Redirection
ya se aplicó a la referencia mencionada, por lo que no fue necesario hacerlo manualmente (los cambios que se probaron antes al momento de publicar la pregunta se revirtieron a los valores predeterminados).
Una última nota es que Wine-Mono
no era necesario y no se agregó al nuevo prefijo Wine, ni siquiera para probar si estaba causando algún error anteriormente (quizás poco probable).