2014-01-23 3 views
0

Как происходит удаление ссылки на сборку (свойства проекта> Ссылки) иногда удаляет любые связанные пространства имен из списка «Импортированные пространства имен», а иногда нет?Удаление ссылок на сборку иногда удаляет импортированные пространства имен

У меня есть одна сборка, которую я переместил на свою машину dev, и на нее ссылаются несколько других проектов. Я наблюдал вышеупомянутое поведение, когда я просматриваю каждый проект, чтобы исправить ссылку.

ответ

0

Как я уже догадался в своем комментарии, он удаляет пространство имен из списка «Импортированные пространства имен», когда последняя сборка с любыми типами в этом пространстве имен удаляется из проекта.

Чтобы воспроизвести это, в новом решении - создайте 3 библиотеки библиотеки VB, которые называются A, B и C. В A и B, изменить корневое пространство имен для Flopsy и переименовать оба Class1 классов то же имя, как их проекты (так A содержат Flopsy.A и B содержит Flopsy.B).

Добавить как A, так и B в качестве ссылок на C и сделать Flopsy импортированным пространством имен. Если вы затем удалите A в качестве ссылки, импорт останется на месте. Но когда вы удалите ссылку B, импорт будет удален.

Затем вы можете повторить вышеуказанное, но сначала удалите B, а затем A, и снова импорт удаляется при удалении второй ссылки.

Так что, если вы получаете различное поведение в различных проектах, это из-за того, что других ссылки этих проектов также (и, возможно, что пространство имен собственных типов принадлежат)

+0

Это не так сложно, как это. Это только одно пространство имен, которое используется только одной сборкой: ссылочная сборка. Это касается каждого проекта. Иногда удаление этой сборки из проекта удаляет импортированное пространство имен, а в других случаях - нет. –

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