Проект базы данных - «Ссылка на внешние элементы из источника с именем x не может быть разрешена

У нас есть два проекта базы данных, x и x_audit. x имеет ссылку на x_audit.

x_audit деплоится нормально, но при попытке деплоить x получаем ошибку:

The reference to external elements from the source named x_audit.dbschema could not be resolved, because no such source is loaded.

Те же файлы отлично работают при развертывании в базе данных 2005 года, мы получаем эту ошибку только при развертывании в 2008 году. Если это имеет значение, это обновление существующей базы данных, а не создание новой. Раньше он работал нормально как на 2005, так и на 2008 году, не знаю, что изменилось.

Спасибо


person Matt    schedule 09.07.2012    source источник
comment
На данный момент мы решили эту проблему, удалив ссылку. Мы получаем много предупреждений при сборке проекта, но, по крайней мере, вы все еще можете выполнить развертывание из него.   -  person Matt    schedule 10.07.2012


Ответы (2)


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

Неопределенный язык о «внешних элементах» означает, что x_audit тоже имеет ссылку на что-то. И на это что-то не ссылается х, поэтому х об этом не знает.

person Tim Partridge    schedule 11.03.2014

Если у вас есть база данных «A», ссылающаяся на внешнюю базу данных dacpac «B», вам необходимо включить все необходимые ссылки из «B» в проект для «A», иначе «A» не будет строиться. В качестве альтернативы вы можете установить для подавления неразрешенных ссылок значение True, и компилятор будет игнорировать отсутствующие ссылки.

Подавление неразрешенных ссылок необходимо, если у вас есть циклические ссылки между базами данных.

введите здесь описание изображения

person FistOfFury    schedule 14.05.2014
comment
Вы говорите, что если у меня есть решение с двумя проектами базы данных, A и B, где B имеет ссылки на C, D и E dacpac (и B строится просто отлично), а A имеет ссылку на B, тогда у меня есть ТАКЖЕ включать ссылки на dacpac C, D и E в проект A?? - person Mike K; 26.02.2015
comment
@MikeK - у тебя есть два варианта. 1) включить DACPAC для других баз данных, которые B ссылается на проект A. 2) Установите для параметра Suppress Reference значение true в проекте A. - person FistOfFury; 02.03.2015
comment
Я действительно сделал это, и это сработало. Меня сбивает с толку тот факт, что эти проекты не могут быть по-настоящему отдельными. Спасибо за помощь. - person Mike K; 03.03.2015
comment
Эта штука с циклической зависимостью озадачила меня, спасибо, что указали на это. Любая идея/опыт, что если подавление этих ошибок вернется к укусу в спину? - person anish; 29.02.2016