Пользовательские формы SharePoint 2007 через C#
-
27-10-2019 - |
Вопрос
Привет и спасибо, что посмотрели!
Фон
Я создаю коммерческое веб -приложение для крупного клиента, который требует, чтобы мы использовали их существующую лицензию SharePoint, поскольку они заплатили за это.
Уровень SharePoint этого приложения (работающий на WebServer, который также запускает SP) написан в C# ASP.NET 2.0. Кроме того, мы пишем приложение ASP.NET MVC 3 в C# и ASP.NET 4 и, хотя мы обычно строили хорошую основную библиотеку, бэкэнд MSSQL с объектами в середине и т. Д. Застрял с SharePoint 2007 как бэкэнд и, в конечном счете, CMS.
SO-мы делаем SP сервисным слоем. Это только задача - ответить на запросы на данные с помощью объектов JSON, тогда наше приложение MVC3 берет их оттуда, создавая объекты из JSON, используя Modern Linq, Lambdas и т. Д.
Проблема
Нам нужно структурировать таблицы данных (которые будут жить в SharePoint в виде списков SharePoint), чтобы соответствовать тому, как конечные пользователи будут управлять контентом. Таким образом, по сути, это требует большего, чем нормального количества столбцов в каждой таблице, для хранения данных, которые обычно будут реляционными. Да, я знаю все о списках поиска, спасибо.
В современном мире мы будем опираться на несколько таблиц данных, создавать объект/модель, а затем отображать форму из той сущности, которую конечный пользователь мог бы использовать для обновления различных данных.
В мире SharePoint неудачная тенденция состоит в том, чтобы создать огромную таблицу, так что форма, извлеченная из нее, имитирует хорошо спланированную сущность.
Я полагаю, что ответ заключается в использовании SharePoint Designer 2007 для создания пользовательских форм, которые тянутся из нескольких таблиц, и позволяют получить небольшую логику и гибкость, но я не хочу использовать этот инструмент (который я должен делать через RDC) для создания формы. Я бы предпочел автоматизировать создание этих форм на основе объекта, которую я строю в инструменте разработки, который я строю. Так. Анкет Анкет
Мой вопрос
Учитывая, что у меня уже есть надежные технологии генерации кода, которые включают в себя создание списков SharePoint и тому подобное через C# код, есть ли способ (через C#) для создания пользовательских форм SharePoint без прохождения SharePoint Designer?
Другими словами, я уже написал код, который позволяет мне создавать таблицы данных (списки SharePoint) так, как они будут в SQL, а затем генерировать модель объекта Data и соответствующий код для выдачи ответа JSON. Теперь мне просто нужно автоматизировать процесс создания пользовательской формы SharePoint, которая связывает мою модель, которая основана на нескольких списках SharePoint, с тем же рабочим процессом. Я могу сделать это через SharePoint Designer, но как мне сделать это в C#?
Огромное спасибо!
Матт
Решение
Для пользовательских форм списка у вас есть возможность разработать - шаблоны пользовательских рендеринга. Это файлы ASCX, и, следовательно, если у вас есть стандартизированные макеты и т. Д., Вы вполне можете в некоторой степени автоматизировать генерацию кода.