У меня есть несколько решений.Ссылка на проект, добавленная к одному из проектов в том же решении, выглядит сломанной в другом решении
В первом решении у меня много проектов. Один из проектов под названием «A» имеет ссылку на проект другого проекта «B» того же решения.
Во втором решении добавлен проект «A», но не проект «B».
Оба решения успешно строились.
Однако во втором растворе, ссылка на В добавлен в проекте А, появляется сломана.
Почему?
Теперь, в первом решении, вместо добавления проекта ссылки на B в A, я просто добавить «ссылку на файл» из DLL B (который копируется в общий выходной каталог, созданный для всех проектов) в . Теперь ссылка появляется в обоих решениях, и первое решение не успешно выполняется.
Могу ли я узнать, что делать, если у меня есть такой сценарий?
EDIT: Я посмотрел на файл проект проекта А и обнаружил, что путь (<ProjectReference Include = "..\B\B.csproj" />
атрибута) для ведения проекта B, относительный путь. (например, «.. \ B \ B.csproj»). Я полагаю, что это причина, по которой эта ссылка выглядит нарушенной во второй сборке, потому что сборка B не является частью второго решения, и, очевидно, «B.csproj» недоступен при разрешении ссылки с использованием относительного пути.
Да, то, что вы сказали правильно. Я смешал ссылки. Однако это не единственная проблема. Я все еще изучаю, и кажется, что проблема может быть связана с моими автоматическими действиями сборки, которые создают решения через какой-то скрипт. Спасибо за ваш ответ. – Learner
Проблема решается путем удаления проекта A из второго решения и вместо добавления ссылки на проект в A, я добавил ссылку на свою DLL, хранящуюся в общем местоположении. Кроме того, во всех необходимых проектах мне пришлось написать post build event для копирования DLL-файлов из \ bin \ Debug в общую папку, откуда я добавляю ссылки. – Learner