Сильно назовите три сборки, которые ссылаются друг на друга - PullRequest
4 голосов
/ 14 января 2010

Это, наверное, действительно легко, но я в тупике (и я нуб с c #). У меня есть 3 сборки, которые ссылаются друг на друга (например, регистрация для уведомления о методе делегата или вызов открытого метода), и все они прекрасно компилируются, пока я не попытаюсь подписать их строгим именем. Тогда я не смогу скомпилировать ни одного из них, поскольку у двух других нет строгого имени. Что мне не хватает? Я создал файл строгого имени для всех трех, но не могу включить snk и скомпилировать их.

Ответы [ 2 ]

4 голосов
/ 14 января 2010

Если вы создали один файл snk, который хотите использовать на всех трех из них, выберите: Добавить существующий элемент из контекстного меню проектов.

Найдите файл snk и выберите «Добавить как ссылку», нажав стрелку рядом с кнопкой «Добавить».

Затем в свойствах вашего проекта убедитесь, что на вкладке «Подписывание» установите флажок «Подписать сборку», а затем выберите файл ключа, который вы только что добавили в свой проект.

Это должно сработать.

2 голосов
/ 14 января 2010

Сборка со строгим именем может ссылаться только на другие сборки со строгим именем.

Когда вы ссылаетесь на строгое имя сборка, вы ожидаете, чтобы получить определенную преимущества, такие как управление версиями и защита имен. Если со строгим именем сборка тогда ссылается на сборку с простым именем, которое не есть эти преимущества, вы теряете выгоды, которые вы получите от использования сборка со строгим именем и вернуться к DLL конфликтует. Поэтому со строгим именем сборки могут ссылаться только на другие сборки со строгим именем.

Цитируется из MSDN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...