.NET и DLL в нескольких проектах - PullRequest
1 голос
/ 12 января 2010

Моя текущая проблема заключается в том, что у меня есть DLL, у которой есть класс, который я использую в качестве абстракции для моих картографических баз данных. Я использую эту DLL во всех моих проектах (включая другие библиотеки классов / библиотеки DLL), которые обращаются к базе данных. Моя проблема заключается в том, что каждый раз, когда я обновляю свою библиотеку Data Mapper, мне приходится обновлять ее во всех других библиотеках, которые я использую в своем основном проекте (сейчас это означает 3 другие библиотеки классов). Когда я пытаюсь отладить библиотеку dll в моем основном проекте, это становится большой работой для каждого небольшого изменения. Есть ли лучший способ приблизиться к этому?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 12 января 2010

Если я правильно понял вопрос, есть две возможности:

  • Ссылка на источник проекта, а не на сборку в ваших различных проектах.
  • Создайте задачу пост-сборки, которая скопирует вашу общую сборку dll в центральное место, откуда ваши другие проекты смогут получить к ней доступ. Что-то вроде:

    copy "$ (TargetPath)" $ (SolutionDir) SharedAssemblies \ $ (TargetFileName)

0 голосов
/ 12 января 2010

Из формулировки вашего вопроса кажется, что вы подключаетесь к мапперу, такому как LINQ, и используете классы, которые он генерирует, как классы модели, что приводит к изменениям во всем при перекомпиляции.

Если это так: Возможно, вы захотите создать свои собственные модели и сопоставить их с генерируемыми классами отображения данных. Посмотрите на что-то вроде Шаблон репозитория . Затем вы в основном создаете слой над картографом данных, и ваше приложение использует этот слой.

Если это не так:

  • Не ссылаться на DLL, ссылка проект.
  • Скомпилируйте все свои сборки в одну, или вы можете использовать что-то вроде ILMerge , чтобы сделать одна сборка.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...