Ссылка на Visual Studio не копируется в среде с несколькими проектами

У меня есть файл решения в VS 2010, и в нем есть несколько проектов.

Теперь у меня есть ссылка на этот вызов DLL MySql.Data.Entity.dll.

В качестве примера у меня есть следующие настройки проекта в решении:

  • Домен (ссылка на MySql.Data.Entity.dll)
  • Domain.Test (ссылка на проект "Домен")

Я хочу, чтобы Domain.Test скопировал все ссылки из Домена, поэтому я установил Свойство для этой библиотеки в "Копировать локально - True". Он не был скопирован в проект Domain.Test.

Я столкнулся с этой проблемой ранее с более dll. То, что я сделал, было это:

namespace Domain.Helpers
   {
        /// <summary>
        /// To trick VS to deploy required assemblies
        /// </summary>
        class BuildTricker
        {
            public void AssemblyTricker()
            {
                new LinFu.DynamicProxy.CallAdapter(null);
                new NHibernate.ByteCode.LinFu.ProxyFactory();
            }
        }
    }

И работал нормально. Если я "использую" класс, он будет знать, что скопировать его в "Domain.Test".

Проблема в том, что я ничего не могу инициализировать /"использовать" из этого MySql.Data.Entity.dll.

Примечание. Простое добавление пространства имен в операторе Using не поможет, вы должны "использовать" класс в dll для его копирования.

В настоящее время я вручную ссылаюсь на эту DLL во всех проектах, которые требуют этого.

Итак, мой вопрос. Что-то не так с моей конфигурацией? Или это ограничение VS?

Спасибо,

Chi

1 ответ

В этом и заключается проблема COMReferences: они не ресурсы, поэтому их не копируют.

Установив ссылку на MySql.Data.Entity.dll's Isolated При значении True файл копируется из исходного местоположения в папку bin вашего проекта "Domain" и, наконец, в папку bin вашего проекта "Domain.Test".

Другие вопросы по тегам