SharePoint - модель приложения

В этой главе мы рассмотрим модели приложений развертывания SharePoint. Поскольку SharePoint движется в сторону облака, для использования приложений для SharePoint доступны следующие модели развертывания:

  • SharePoint-hosted
  • Autohosted

Приложение, размещенное в SharePoint

Тип развертывания с размещением в SharePoint представляет собой способ развертывания клиентских облегченных приложений в SharePoint. Самый простой способ представить приложение, размещенное в SharePoint, как приложение, не имеющее серверного кода.

Ключевые особенности приложения, размещенного в SharePoint:

  • Это приложение, состоящее из статических файлов или страниц приложения, которые находятся в вашем SharePoint, например файлов HTML и JavaScript, которые позволяют кодировать на стороне клиента.

  • Когда пользователи получают доступ к приложению, размещенному в SharePoint, они перенаправляются на страницу, содержащую ваше приложение.

  • Тип развертывания с размещением в SharePoint подходит для более легких приложений, таких как представления фирменных списков, мультимедийные приложения или погодные приложения.

  • Если вы решите использовать модель развертывания с размещением в SharePoint, вы ограничены кодом, который не запускается на сервере.

  • Вы можете использовать Silverlight с SharePoint и воспользоваться преимуществами HTML вместе с JavaScript.

Давайте посмотрим на простой пример приложения, размещенного в SharePoint.

Step 1 - Откройте Visual Studio и выберите File → New → Project menu.

Step 2 - На левой панели выберите Templates → Visual C# → Office/SharePoint а затем на средней панели выберите App for SharePoint.

Введите Имя в поле Имя, нажмите ОК, и вы увидите следующее диалоговое окно.

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

Step 3 - Перейдите в центр администрирования SharePoint и скопируйте URL-адрес SharePoint.

Step 4 - Вставьте URL-адрес в New App for SharePoint диалоговое окно, как показано ниже.

Step 5 - Щелкните Next и это откроет Connect to SharePoint диалоговое окно, в котором нам нужно войти.

Step 6 - Введите свои учетные данные и нажмите Sign inкнопка. После успешного входа на сайт SharePoint вы увидите следующее диалоговое окно -

Step 7 - Щелкните Finish. После создания проекта щелкните значокAppMenifest.xml в обозревателе решений.

Step 8 - Щелкните значок Permissionsтаб. Откроется раскрывающийся список «Область действия».

Step 9 - В раскрывающемся списке «Область действия» выберите Web, который представляет собой объем настраиваемых вами разрешений. В раскрывающемся списке «Разрешение» выберите «Чтение» - тип разрешения, которое вы настраиваете.

Step 10 - Откройте файл Default.aspx и замените его следующим кодом.

<%-- The following 4 lines are ASP.NET directives needed when 
   using SharePoint components --%>

<%@ Page Inherits = "Microsoft.SharePoint.WebPartPages.WebPartPage,
   Microsoft.SharePoint, Version = 15.0.0.0, Culture = neutral,
   PublicKeyToken = 71e9bce111e9429c" MasterPageFile = "~masterurl/default.master"
   Language = "C#" %>

<%@ Register TagPrefix = "Utilities" Namespace = "Microsoft.SharePoint.Utilities"
   Assembly = "Microsoft.SharePoint, Version = 15.0.0.0, Culture = neutral,
   PublicKeyToken = 71e9bce111e9429c" %>

<%@ Register TagPrefix = "WebPartPages"
   Namespace = "Microsoft.SharePoint.WebPartPages" Assembly = "Microsoft.SharePoint,
   Version = 15.0.0.0, Culture = neutral, PublicKeyToken = 71e9bce111e9429c" %>

<%@ Register TagPrefix = "SharePoint"
   Namespace = "Microsoft.SharePoint.WebControls" Assembly = "Microsoft.SharePoint,
   Version = 15.0.0.0, Culture = neutral, PublicKeyToken = 71e9bce111e9429c" %>

<%-- The markup and script in the following Content element 
   will be placed in the <head> of the page --%>

<asp:Content ID = "Content1" ContentPlaceHolderID = "PlaceHolderAdditionalPageHead" 
   runat = "server">
   <script type = "text/javascript" src = "../Scripts/jquery- 1.6.2.min.js"></script>
   <link rel = "Stylesheet" type = "text/css" href = "../Content/App.css" />
   <script type = "text/javascript" src = "../Scripts/App.js"></script>
</asp:Content>

<asp:Content ID = "Content2" ContentPlaceHolderID = "PlaceHolderMain"
   runat = "server">
   <script type = "text/javascript"> 
      function hello() {
         var currentTime = new Date();
         $get("timeDiv").innerHTML = currentTime.toDateString();
      }
   </script>
   <div id = "timeDiv"></div>
   <input type = "button" value = "Push me!" onclick = "hello();" />
</asp:Content>

Step 11- Перейдите в обозреватель решений, щелкните проект правой кнопкой мыши и выберите «Опубликовать». Щелкните значокPackage the appкнопка. Это создает ваше приложение, размещенное в SharePoint, и подготавливает его для развертывания на вашем сайте SharePoint.

Вы увидите следующую папку, содержащую файл * .app.

Step 12 - Перейдите на свой сайт SharePoint в Интернете.

Step 13 - Щелкните Apps for SharePointна левой панели. Откроется новая страница.

Step 14 - Перетащите сюда свои файлы для загрузки.

После загрузки файла вы увидите следующую страницу -

Step 15 - Нажмите на опцию - Site Contentsна левой панели. Щелкните значокadd an app значок, как показано на следующем снимке экрана -

Откроется новая страница.

Step 16 - Выбрать Your Apps → From Your Organizationна левой панели, и вы увидите, что приложение доступно для установки. Щелкните приложение.

Step 17- При нажатии на приложение открывается диалоговое окно, как показано на следующем снимке экрана. НажмитеTrust it.

Step 18- Вы увидите, что приложение установлено. После завершения установки вы можете щелкнуть приложение.

Вы увидите следующую страницу, которая содержит одну кнопку -

Когда вы нажимаете Push me Кнопка отобразит текущую дату.

Автохостинг

В AutohostedМодель развертывания существенно отличается от предыдущих приложений SharePoint. В этой модели вы создаете приложения для SharePoint, но код легко развертывается в Windows Azure в фоновом режиме, поэтому SharePoint автоматически создает приложение, размещенное в облаке.

Важные особенности -

  • Похоже, что он работает на SharePoint, но в фоновом режиме он фактически развертывается в специальном экземпляре Office 365 Windows Azure и регистрируется как проверенное и авторизованное приложение в SharePoint.

  • У вас нет полного доступа ко всем возможностям платформы Windows Azure с моделью развертывания Autohosted, но у вас достаточно платформы для создания некоторых интересных приложений.

Давайте посмотрим на простой пример Autohosted, создав новый проект.

Step 1 - Выбрать App for SharePoint 2013 и нажмите OK.

Откроется новое диалоговое окно.

Step 2 - Выбрать Autohosted и нажмите Next.

Step 3- Откроется новое диалоговое окно. ВыбратьASP.NET MVC Web Application и нажмите Finish.

Как только проект будет создан, опубликуйте свое приложение. Остальные шаги такие же, как и для варианта размещения в SharePoint.