Ссылка на 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".