2009-11-02 2 views
1

Предположим на мгновение, что вы создаете коммерческий продукт для SharePoint. Этот продукт будет предлагаться как в сообществах (бесплатно), так и в Enterprise (pay) изданиях.Решения/функции для выпусков коммерческого продукта SharePoint

Кодовая база для версии Сообщества - это подмножество с небольшими дельтами, обрабатываемое с помощью (C#) #define операторов. Эффективно это единая база кода. Процесс сборки создает два решения (каждый из которых содержит две функции), по одному для каждого выпуска.

Невозможно установить оба экземпляра в ферме за один раз. Текущая бизнес-модель предлагает сообщество/бесплатную версию только для ферм SharePoint с одним сервером. Это предназначено для поддержки отдельных лиц и сценариев развития.

Решения включают в себя множество функциональных элементов, но в настоящее время нет веб-частей. Возможно, что одна или несколько веб-частей могут быть включены в будущую версию. Любой подход, ограничивающий содержание решения/функции, вероятно, не лучшая идея в долгосрочной перспективе.

В какой мере вы могли бы повторно использовать решения и/или идентификаторы feaure по всем выпускам? Зачем?

ответ

2

Я бы хотел, чтобы люди могли легко обновлять их до полного, если они этого захотят.

Представьте себе случай с веб-частью - если вы настроите несколько версий бесплатной веб-части, то unintall и установите полную веб-часть, тогда большинство людей захотят, чтобы все существующие экземпляры продолжали работать, но на новой веб-части

Я думаю, вам нужно будет поддерживать решение, чтобы оно работало.

Вам также необходимо иметь полное имя сборки одинаково (версия файла может быть разной) или настроить переадресацию привязки.

Ох - и никаких нарушений в вашем коде, конечно, не происходит.

+0

Благодарим вас за ответ. Ваша логика о желаемом обновлении имеет смысл. То, как разрабатывается решение, описанное вами поведение обновления может быть выполнено с помощью обоих подходов. Любые другие причины идти так или иначе? –

+0

Вы уверены, что если решение SolutionId изменится, SharePoint загрузит новую веб-часть вместо старой, в которой пользователи уже настроили ее? Я догадался, что этого не произойдет, и вы получите ошибку «Отсутствующая сборка», но не успели проверить. – Ryan

+0

Это интересный момент. Веб-части привязаны к сильно названной сборке. Как вы полагаете, мне пришлось бы проверить, есть ли дополнительная привязка на уровне функции или решения. –

1

Я бы использовал один и тот же идентификатор и предоставил дополнительную функцию для разблокировки корпоративных функций. Эта функция содержит дополнительные DLL, веб-части, лицензионные ключи, ... необходимые для разблокировки Enterprise Edition.

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

+0

Вопрос о том, чтобы упростить обновление без «проигрыша», - это ключ. Модель обновления с помощью дополнительных функций может быть очень привлекательной. Это очень хорошо работает, например, для стандартных элементов управления корпоративным поиском в SharePoint 2007. В других случаях, таких как приемник событий, для этого может потребоваться значительно больше усилий. Спасибо за ваш ответ. –

 Смежные вопросы

  • Нет связанных вопросов^_^