Как заставить работать атрибут InternalsVisibleTo, безопасно подписав открытый ключ токена?

Я пытаюсь раскрыть некоторые внутренние компоненты своего проекта модульного тестирования, используя:

[assembly: InternalsVisibleTo("MyTest")]

Но я получаю сообщение об ошибке:

Ошибка 1 Ссылка на сборку друга MyTest 'недействительна. Сильное имя подписанные сборки должны указывать открытый ключ в своих Объявления InternalsVisibleTo. ... / MyClass.cs ...

Когда я назначаю PublicTokenKey вручную:

[assembly: InternalsVisibleTo("MyTest, PublicKeyToken=XxxxxYysakf")]

Решение строится без ошибок.

  1. Почему мне нужно включать токен открытого ключа?
  2. Я не уверен, что если я что-нибудь сломаю в процессе работы, включив токен открытого ключа.

Итак, каков наилучший и самый безопасный способ назначить открытый ключ моему тест-проекту?

9
задан Jonathan Dickinson 25 August 2011 в 14:19
поделиться