2013-09-04 4 views
0

В настоящее время я работаю над приложением, которое включает коммуникационный модуль, который использует TCP-сервер и TCP-клиент. Модуль связи включает в себя каталог «Core», который содержит частные классы для внутренней работы модуля связи.Ограничить видимость классов конкретной сборкой

Моя цель - создать модульные тесты для классов в директории «Core». Но они не доступны из тестового проекта.

Есть ли способ или шаблон проектирования, который может позволить мне предотвратить использование этих классов вне сборки, кроме тестовой сборки?

Спасибо,

+1

Общая практика заключается в том, чтобы сделать их внутренними, а затем использовать атрибут InternalsVisibleTo на вашей сборке. –

ответ

1

Вы можете сделать внутренние классы доступными для YourTestProject, добавив следующую строку:

[assembly: InternalsVisibleTo("YourTestProject")] 

в AssemblyInfo.cs проекта вы хотите проверить.

0

Вы можете использовать атрибут InternalsVisibleTo, чтобы сделать внутренние классы видимыми для тестовой сборки.

Смежные вопросы