Итак, # 2 пользовательский проект Framework такой же, как # 1, но настроен для конкретного клиента?
Имеет ли смысл сделать собственный исходный код Framework ветвью нормального исходного кода Frameworkвместо того, чтобы держать это как фактическое отдельное решение?Я полагаю, что это будет зависеть от того, насколько велики различия.
На мой взгляд, преимущество превращения в ветвь состоит в том, что вы сможете легче объединять изменения между двумя ветвями.Представьте, что исправление ошибки или новая функция сделаны в # 1 и также должны быть применены к # 2;TFS должен быть в состоянии сделать это проще, при условии, что TFS знает, что # 2 - это просто ветвь # 1.
В любом случае, чтобы перейти к сути вашего вопроса, я думаю, что ваши другие проектыдолжен ссылаться на выходные сборки из этих проектов.
Я бы скопировал сборки Framework в папку в папке решения других ваших проектов.Я обычно называю мои "Зависимости", но это действительно не имеет значения.Пусть ваши проекты добавят ссылку на эти файлы сборки.Я предполагаю, что ваши пользовательские сборки Framework будут иметь то же имя, что и обычные сборки Framework, так что вы можете легко заменить эти файлы по мере необходимости (или создать отдельные ветки ваших проектов, использующих пользовательскую Framework).
Я бы не рекомендовал помещать сборки в GAC, потому что во время разработки легко запутаться, если вы забудете удалить более старую версию сборки из GAC.