I have recently started developing SharePoint add-in using Visual Studio 2017 and SharePoint 2016. I am having difficulties in finding answer to the following questions.

  1. Why is the deployment process performing a fresh installation?
  2. Why is it always installed in different URL?
  3. Is there a way to define a static URL?
  4. The app is opened in a separate tab. Why is it not opening within the development site?

FYI: I have performed the steps in link and have adapted AppManifest and Web.Config as described in link.

Thanks in advance.


When you deploy a SharePoint-hosted add-in from Visual Studio it creates a new SharePoint site and the resources that make up your add-in (pages, scripts, css, images) get provisioned into this new site. This site is known as the app web. It is a child site of the site you set to use for testing when you create the project in Visual Studio.

Subsequent deployments from Visual Studio will generally replace the resources in the existing app web. However there are some cases where Visual Studio needs to replace the existing app web with a new one. Modifying the app manifest is one of these cases.

If you modify the app manifest and deploy from Visual Studio, the existing app web gets deleted, a new app web gets created, and the resources that make up your add-in get provisioned into the new app web.

Every app web is given a unique domain name. Doing this isolates every add-in from every other add-in and it isolates every add-in from every "regular" SharePoint site. So, if the Visual Studio deployment requires that the existing app web be deleted and a new app web be created, the URL for the add-in will change. Part of the domain for the add-in is generated at the time the app web is created so there is no way to know what it will be ahead of time.

This YouTube video (which is part of my Pluralsight course on SharePoint-hosted add-in development) explains more about the URLs used with SharePoint-hosted add-ins.

App URLs, Identity, and Isolation in SharePoint-Hosted Apps

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.