Я хотел бы напрямую ссылаться на Dll, которые используются во время компиляции / выполнения. Мой макет программы такой:
Консоль Exe запускает Winform DLL. Эта DLL использует кучу DLL для выполнения. Appconfig находится в проекте winform dll. Основываясь на некотором прочтении, winll dll ищет неправильный app.config? Я намерен выполнить мою DLL, используя Assembly.LoadFrom ();
Я создал файл app.config и добавил следующие строки в раздел
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="CommonConversions"
publicKeyToken="null"
culture="neutral" />
<codeBase version="1.0.0.0"
href="file://C://BMS_ACTD//bin//DX//Globals//CommonConversions.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="GlobalConstants"
publicKeyToken="null"
culture="neutral" />
<codeBase version="1.0.0.0"
href="file://C://BMS_ACTD//bin//DX//Globals//GlobalConstants.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="MessageInstance"
publicKeyToken="null"
culture="neutral" />
<codeBase version="1.0.0.0"
href="file://C://BMS_ACTD//bin//DX//Globals//MessageInstance.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="MessageInterface"
publicKeyToken="null"
culture="neutral" />
<codeBase version="1.0.0.0"
href="file://C://BMS_ACTD//bin//DX//Globals//MessageInterface.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="ToolsInterface"
publicKeyToken="null"
culture="neutral" />
<codeBase version="1.0.0.0"
href="file://C://BMS_ACTD//bin//DX//Globals//ToolsInterface.dll"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
Местоположение определенно правильное. DLL не имеют строгого имени, поэтому publicKeyToken = "null". все мои версии 1.0.0.0. Когда я смотрю на свойства моей указанной библиотеки DLL, культура пуста. Должен ли мой быть так же? Есть что-нибудь, что, кажется, я делаю неправильно?