Если клиент не разрешает установку DLL в своем кусте SharePoint 2007 (или GAC), есть ли способ создания веб-частей и т. Д. С помощью Visual Studio, для которых не требуется развертывание DLL-файловв улей (или GAC)?Если нет, есть ли другой способ использовать Visual Studio и / или C # с функциональностью пространства имен SharePoint аналогичным образом, даже если не совсем стандартным способом?Этот клиент не собирается позволять нам устанавливать что-либо на коробке, кроме страниц и, если не в GAC или кусте, связанных с SharePoint .dll, разработанных нами.
Примечание: есть какой-то конкретный проектподробности в конце публикации.
Окончательное резюме принятого ответа:
- Не было получено никакого ответа с альтернативным методом развертывания пользовательских сборок SharePoint (например, не GAC ине куст).
- Однако можно использовать C #, встроенный в страницу, и вы можете ссылаться на сборку SharePoint и использовать ее в коде.(подробности см. в принятом ответе)
- Многим вещам, которые я ожидал, понадобился пользовательский код, и, похоже, во многих случаях это было бы даже возможно / полезно сделать.
У меня есть несколько базовых идей о том, как это может работать («волшебство происходит»), но, будучи твердо в квадранте «не знаю, чего я не знаю», вернотеперь я не знаю, можно ли это сделать, и я не знаю, получит ли какой-нибудь возможный альтернативный маршрут что-то большее, чем просто разработка непосредственно в SharePoint Designer без C # / Visual Studio.
ideas:
Разработка с Visual Studio в обычном режиме, с использованием WSPBuilder или стандартного проекта SharePoint, но вместо обычного развертывания установка библиотеки DLL в не относящееся к кустам местоположение на компьютере,а затем каким-то образом включить элементы в качестве внешнего ресурса.
Создать самодостаточный веб-сервис, который так или иначе можно назвать, обслуживать компоненты, которые могут быть включены в сайт SharePoint.
Разработка отдельных веб-страниц / веб-элементов управления в веб-проекте, не относящемся к SharePoint, с последующим их включением в сайт SharePoint;или, как-то создавая ссылку на них в каталогах IIS
Разработка отдельных веб-страниц / веб-элементов управления в веб-приложении и использование Hostable WebCore для доставки того, что необходимо, и, конечно же,каким-то образом включая обслуживаемые страницы в SharePoint.
И последнее, что меня беспокоит, так это то, что даже если бы я выяснил детали шагов "волшебства происходит", я бы все равно не получилто, что я хочу, - это возможность использовать функциональность пространства имен SharePoint полезным способом, например, подключенным к разрабатываемому нами сайту, и с достаточным доступом, чтобы делать то, что нам нужно, не перепрыгивая через слишком много обручей, либо източка зрения разработчика (например, код, который трудно использовать или поддерживать), или плохой пользовательский опыт (например, пользователь постоянно получает запросы на вход в систему).
(Приношу свои извинения, если ответ очевиден; я новичок в разработке SharePointи у меня есть опыт работы только с веб-разработкой высокого уровня (например, довольно простой .ascx / .aspx, ия использую конструктор страниц), поэтому мне нужно быстро ориентироваться.Когда я ищу помощь по «очевидным» поисковым терминам, я получаю огромное количество информации для нормальных сценариев, но не нашел ответа на это.)
По запросу, вот подробности, которые я могу дать о конкретном проекте.В настоящее время у меня есть информация только о ее части, и это долгосрочный проект с множеством частей, которые будут основываться друг на друге.Поэтому, к сожалению, если решение не является достаточно общим, мне, вероятно, придется пойти по пути SharePoint Designer, чтобы избежать риска, связанного с использованием метода, который может быть несовместим с частями, которые появятся в будущем.Кроме того, я прошу прощения за то, как они являются общими;Я пытаюсь предоставить список необходимых возможностей, а не детализацию реального проекта.
- возможность иметь домашние страницы отдельных пользовательских сайтов, которые позволяют им просматривать различную информацию о проектах, которыми они владеют, ипроекты, в которых они участвуют,
- имеют возможность иметь шаблоны сайтов, в которых хранятся шаги типа мастера, которым должны следовать пользователи
- возможность связывать шаблоны мастера с различными документами и, возможно, другими вещами, связанными с различнымиsteps
- возможность сохранять различные связанные роли и атрибуты (например, сколько времени отводится на выполнение задачи) с элементами в шаблонах
- возможность использовать мастерсоздавать экземпляры элементов сайта и разрешать или обеспечивать назначение других пользователей на основе атрибутов шаблона
- возможность для некоторых ролей, связанных с элементом, редактировать документ и сохранять его обратно, а также ограничивать редактирование других пользователейих
- способность к использованиюкроме создателя проекта (возможно, на основе роли проекта, назначенной пользователем), чтобы просмотреть всю информацию (временные шкалы и т. д.) и редактировать все документы в способности проекта
- для связанных пользователей, которые имеютроли, назначенные для пометки, когда они завершают свою часть задачи
- способность вычислять временные рамки на основе информации из атрибутов для различных элементов в проекте
- возможность уведомлять пользователей (черезуведомления электронной почты и домашней страницы сайта) в ролях, которые должны выполнять действия или помечены как необходимые для получения обновлений по одному или нескольким элементам проекта
- возможность заблокировать элементы проекта от изменения после завершения шага;и, возможно, разблокировать и / или отозвать шаги
- возможность автоматически создавать отчеты и отправлять их в соответствующие местоположения (возможно, по электронной почте, а также, возможно, на страницу администрирования сайта или на другой сайт целиком).
- возможность отмечать завершенные проекты и архивировать их в отдельном разделе, доступном только для просмотра определенным группам окон или группам, определенным на месте
Я также знаю, что есть намерение значительно увеличитьМасштаб этого проекта, как только мы завершим первую часть к удовлетворению клиента.Я пытаюсь узнать больше информации и опубликую здесь, если / когда это будет доступно.
Я понимаю, что некоторые из них могут на самом деле не иметь никакого отношения к SharePoint, в частности, а некоторые могут и не иметьдать достаточно информации, чтобы сказать вам, какая функция или другая она понадобится.Я с удовольствием проясняю все, что не имеет смысла, но я хотел бы попытаться рассказать немного подробнее, поскольку кто-то еще может гораздо лучше понять, какие части SharePoint необходимо или возможно использовать, чем я.