app manifest web page html/css/js app sharepoint app web sharepoint host web windows azure websites...

39

Upload: rosanna-armstrong

Post on 14-Dec-2015

239 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint
Page 2: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Developing Apps for SharePoint 2013 with Visual Studio 2012Sean Laberee

SES-B305

Page 3: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• App model• Building an app in Visual Studio• App artifacts• Cloud apps• Continuous Integration with TFS

Agenda

Page 4: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Full Page

Page 5: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

App Part / Client Web Part

Page 6: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

UI Command – Ribbon/Menu Action

Page 7: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

New App Model

App ManifestWeb Page

HTML/CSS/JS

APP

Page 8: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Choosing a Hosting Option

SharePoint App Web

SharePoint Host Web Windows

Azure Websites

SharePoint Host

WebYour hosted

site

SharePoint Host

Web

SharePoint-hosted Autohosted Provider-hosted

Client-side code only Cloud apps

Page 9: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

The Visual Studio Tools

Page 10: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Microsoft Office Developer Tools

Flexible EnvironmentsLocal & Remote Development

SharePoint Server & Office 365

Visual Studio 2012Download:http://aka.ms/OfficeDevToolsForVS2012

Included in Visual Studio 2013!

Page 11: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Demo: Building your first app in Visual StudioSean Laberee

Page 12: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Designer over XML• App Properties• Permissions• Prerequisites• Supported Locales• Remote Endpoints

App Manifest

Page 13: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Lists• Define list definitions & instances• Create custom views

• Content Types• Define content types• Configure columns

Lists & Content Types

Page 14: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• End-to-end tooling• Create Site & List

Workflows

• Rich Workflow Designer

• Initiation Form & Custom Activity Templates

• Interactive Debugging

SharePoint Workflows

Page 15: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Access OData Services • Wizard & Designer Support• External Content Types

Business Connectivity Services

Page 16: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Create App Parts• Wizard creates XML & page• Shine through parts of your app• Create convenient launch points• Content hosted in an IFrame

Client Web Parts

Page 17: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Create UI Extensions• Show on the ribbon• Add to item menu (ECB)• Wizard creates XML

UI Custom Actions

Page 18: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Demo: App Shapes

Sean Laberee

Page 19: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Anatomy of an App Package

AppManifest.xml

Client Web PartsUI Custom Actions

(Host)

Web Assets (Web Deploy)

SQL Azure(.dacpac)

SQL Scripts

.app P

ack

ag

e

(OPC

)

ListsModules

WorkflowsBCS Entities

etc…

WSP

Windows Azure Web Sites

App Web (from WSP)

HostWeb

Autohosted Apps

SharePoint-hosted Apps

Page 20: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Anatomy of an App Package

AppManifest.xml

Client Web PartsUI Custom Actions

(Host)

Web Assets (Web Deploy)

SQL Azure(.dacpac)

SQL Scripts

.app P

ack

ag

e

(OPC

)

ListsModules

WorkflowsBCS Entities

etc…

WSP

Dedicated Server / Third-party Hosting Service

App Web (from WSP)

HostWeb

Provider-hosted Apps

Page 21: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Cloud apps

Page 22: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Choosing a Hosting Option

SharePoint App Web

SharePoint Host Web Windows

Azure Websites

SharePoint Host

WebYour hosted

site

SharePoint Host

Web

SharePoint-hosted Autohosted Provider-hosted

Client-side code only Cloud apps

Page 23: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Choose in new app wizard• Autohosted and Provider-hosted both include

a web project

• Add event to app• App events and remote event receivers add

a web project

• “Appetize” any Web project

Creating a Cloud app

Page 24: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Use OAuth for secure communications• SharePoint & web application trust third party (ACS)

• Trust developed using ClientId & ClientSecret• SharePoint & ACS know the ClientId• Web application & ACS know the ClientSecret

Web to SharePoint Communication

• Token Flow• SharePoint acquires context token from

ACS & passes it to web application• Web application validates context token

with ACS & gets back an access token• Access token used to communicate with

SP

Page 25: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Code runs on local machine• IISExpress is used to host Web project (http://localhost:1234)• LocalDB is used for SQL database• Connection string updated in web.config from SQL project

• No app registration required• ClientId & ClientSecret are generated for you

• Supported for SharePoint-hosted, Autohosted and Provider-hosted apps

Debug (F5)

Page 26: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Remote Event Receivers• Item Added• Item Updated• Item Deleted

• App Event Receivers• Handle App Installed• Handle App Uninstalling

• SharePoint calls web server based SOAP endpoints

Handling events in apps for SharePoint

Page 27: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Firewall will block these for Remote Development

• Office Developer Tools configure Windows Azure Service Bus to open communications between SharePoint online and local IISExpress

Debugging Remote Events

Page 28: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Use to run your app on Azure

• App is provisioned to Office 365 & Windows Azure Websites

• Supported for SharePoint-hosted & Autohosted apps only

Deploy

Page 29: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Usage• Upload to test environments• Upload to Store or App Catalog

• SharePoint-hosted & Autohosted• No app registration required• Everything included in the .app package

• Provider-hosted• Developer must acquire ClientId &

ClientSecret• SharePoint artifacts in .app package• Web assets in Web Deploy package

Publish

Page 30: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Demo: Remote Event Receivers

Sean Laberee

Page 31: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Continuous Integration

Page 32: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Key Benefits• Consistent, repeatable builds• Capability to add official versions• Reduce problems due to inconsistent developer environments• Better Team Collaboration• Automated testing & deployment

• With the Team Foundation Service & the new Cloud App Model, we’ve made it much easier!

Continuous Integration

Page 33: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Demo: Continuous Integration with Team Foundation ServiceSean Laberee

Page 34: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Sign-up: tfs.visualstudio.com

• Check-in scripts from: officesharepointci.codeplex.com/

• Use the scripts in your build process

• Write tests & check-in!

Getting Started with TF Service

Page 35: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Developer Desktop on Azure IaaS

Page 36: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

• Visual Studio supports:• The new cloud app model• Both Office 365 & local SharePoint server• Remote development• SharePoint app artifacts• Continuous Integration with Team Foundation Service

• Get started now at http://dev.office.com

Summary

Page 37: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

msdn

Resources for Developers

http://microsoft.com/msdn

Learning

Microsoft Certification & Training Resources

www.microsoft.com/learning

TechNet

Resources

Sessions on Demand

http://channel9.msdn.com/Events/TechEd

Resources for IT Professionals

http://microsoft.com/technet

Page 38: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

Evaluate this session

Scan this QR code to evaluate this session.

Page 39: App Manifest Web Page HTML/CSS/JS APP SharePoint App Web SharePoint Host Web Windows Azure Websites SharePoint Host Web Your hosted site SharePoint

© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.