события до и после сборки - PullRequest
0 голосов
/ 31 мая 2011

Q:

Я все еще ищу, как выполнить то, что я хочу сделать .. У меня есть DLL (набор классов содержит соединение с базой данных и т. Д.), Который является общим для нескольких приложений. Моя цель : любые изменения или модификации этой DLL отражаются для всех приложений используйте эту DLL. Я не хочу переиздавать DLL во всех приложениях с каждым изменением. Я делаю следующее, но вторгаюсь:

1 - попытка поместить DLL в GAC .

2 - попытка преобразовать DLL-библиотеку в веб-службу .

3 - поместите DLL как проект в одно и то же решение для каждого приложения, используйте его. Это частично решит проблему.

теперь я читаю о событиях до и после сборки в visual studio. Я хочу знать, как использовать эти события и как написать пакет для выполнения того, что я хочу сделать. Я буду благодарен, если есть какой-то код или сценарии, которые определят, как решить проблему.

заранее спасибо

Ответы [ 2 ]

1 голос
/ 31 мая 2011

Вы используете систему контроля версий? У SVN есть внешние возможности для такого рода вещей ...

1 голос
/ 31 мая 2011

GAC будет работать нормально для вас.ОДНАКО вы должны вызвать перекомпиляцию в своих приложениях.

Также, если вы компилируете другие приложения, которые используют эту библиотеку в качестве ссылки на проект, они обновят свою ссылку, когда вы выполните компиляцию и скопируете обновленную библиотеку.

Если вы все ссылаетесь на gac - перетащите файл в gac, но затем добавите локальную ссылку, которая не является gac - visual studio обнаружит, что эта библиотека находится в gac, и если вы посмотрите нав свойствах вашей ссылки он покажет CopyLocal = false, что означает, что он будет использовать GAC, а не локальную копию.

УБЕДИТЕСЬ, что все ссылки на приложения имеют CopyLocal = false для этой библиотеки.Вам не нужны события пост-сборки для этого.Но помните - любое приложение, использующее библиотеку gac, должно будет инициировать перекомпиляцию, чтобы получить изменения.Например, добавьте пустую строку в файл web.config - это вызовет перекомпиляцию на месте.Без перекомпиляции изменения не будут собраны в gac.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...