Разные publickeytoken для одной и той же сборки

#c# #.net #ssis #.net-assembly

#c# #.net #ssis #.net-сборка

Вопрос:

У меня есть сборка, которая зарегистрирована в GAC. В папке ‘Windows / assembly’ я могу видеть это, а также видеть его PublicKeyToken ‘aaaa’. У меня есть решение SSIS (я думаю, вообще не имеет значения, что это за тип решения).

Пакет SSIS содержит множество сценариев на c #, каждый из которых имеет свои собственные ссылки. Некоторые из них содержат ссылки на мою сборку. Я вижу один и тот же путь к сборке в свойствах для нее в каждом скрипте. НО у одного из сценариев есть другой PublicKeyToken ‘bbbb’ (у других есть ‘aaaa’). И это нарушает все решение. Сборка работает хорошо, но запустить не удается. Как я могу справиться с такой ситуацией? Обновление: проблема появилась после того, как новая версия сборки была добавлена в GAC. старый был удален.

Я попытался изменить ссылку на копию dll, но проблема не исчезает. Может быть, есть какой-нибудь способ установить PublicKeyToken? Я даже пытался изменить скомпилированный файл (но что, если? =))

В файле .dtsx (файл для скомпилированного пакета) это выглядит следующим образом:

для одного сценария:

 <Reference Include="MyAssembly, Version=1.0.0.0, Culture=neutral,    PublicKeyToken=bbbb, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>C:assembly.dll</HintPath>
</Reference>
  

для остальных:

 <Reference Include="MyAssembly, Version=1.0.0.0, Culture=neutral,    PublicKeyToken=aaaa, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>C:assembly.dll</HintPath>
</Reference>
  

Комментарии:

1. вы уверены, что это тот же элемент, на который ссылаются?

2. @SimonPrice да