La carga del conjunto C # renombrado arroja FileNotFoundException
Tengo un ensamblado de C # al que hace referencia una aplicación de C #.
Debido a nuestros estándares de codificación, existe una regla en la que las DLL de depuración se posponen con una "d" (por ejemplo,ProjectA.dll
se convierte enProjectAd.dll
). Cuando agrego una referencia a la DLL renombrada a la aplicación, se genera correctamente, pero arroja unFileNotFoundException
tras la ejecución.
El error arrojado es el siguiente:
System.IO.FileLoadException: Could not load file or assembly 'ProjectA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=49df7f988e86ed92' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) File name: 'ProjectA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=49df7f988e86ed92'
l gerente de ensamblaje también interviene con una advertencia y error:
WRN: Comparing the assembly name resulted in the mismatch: PUBLIC KEY TOKEN<br>ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.
esde el mensaje de error, parece que está buscando un ensamblado sin lad
postfix.
BTW, hay un ensamblado C ++ / CLI al que hace referencia la misma aplicación. Tiene und
agregado a la DLL, pero ver las propiedades de la referencia en VS2005 muestra que la identidad de seguridad tiene lad
correctamente añadido. La referencia de C # hacen tener eld
agregado en la ventana de propiedades.
¿Qué debo hacer para que esto funcione correctamente para los ensamblados de depuración de C #? He intentado modificar las entradas en AssemblyInfo.cs en vano. ¿Es esto algo que un archivo de manifiesto resolvería?