Visual Studio Publish profile settings for Single Page App on Azure - c#

I want to publish my single page app to Azure. I have created the App Service, App Service Plan and downloaded the publish profile settings on my local. Now I can use FTP to publish it to Azure. But I am wondering if there is a way I can configure this in the my Visual Studio similar to what we do when publishing a .Net application (MVC or Web API) as shown below in the snapshot.
My single page application is not part of the solution. This is how the structure of my projects look like.
It has one .Net Core Web API project and one Single Page App created in Vue.js. I can publish the Web API project from the Visual Studio but not the SPA. Any help with this please?

Per my knowledge, it is impossible to publish it in Visual Studio similar to what we do when publishing a .Net application. There is no Publish... option for us to choose.
As a workaround, we can upload our SPA project to Azure web app via KuDu.
More information about KuDu, we can refer to: Using KUDU with Microsoft Azure Web Apps
We just need to drag the SPA project into KUDU under wwwroot folder as below:

Related

HiQPdf.HtmlToImage HTML layout error in azure

I am using HiQPdf DLL to convert my HTML into PDF. It works on all server but when i deployed this to Azure ,it throws an error. Below is the error:-
"HiQPdf.HtmlToImage HTML layout error"
Thanks for your help in Advance.
Please check the HiQPdf HTML to PDF Converter for .NET FAQ regarding the Azure deployments. Below I copied the information from that page.
Basically you can use the HiQPdf library in Windows Azure Cloud Services and Virtual Machines but not in Web Sites because the Web Sites run in a restricted sandbox. Using Visual Studio you can easily transform an existing ASP.NET 4.0 or MVC application into a Web Role by adding a cloud service project to the solution containing your project. For this, open your solution, right click on the ASP.NET project and select the 'Add Windows Azure Cloud Service Project' option from menu. Right click on the added cloud service project and select the 'Package' option to produce a package and a configuration file you can deploy as an Azure Cloud Service.

Azure API app not visible in Azure portal after publishing

I published my ASP .NET Web API 2 project to Azure as an API app. I used Visual Studio 2013 and got this lovely screen after publishing.
But the API app is no where to be found in my Azure portal.
I looked in my Visual Studio Server Explorer and it is there.
I got the same result as yours after publishing the API app, it's just not listed when clicking Browse > API Apps. Although it says "Web, Mobile and API apps are now in one list", it obviously doesn't work as it says.
Anyway, you can alternatively find your API app in the resource group which you specified in the publishing profile:
Or, just right click the API app in Server Explorer and select "Open in Management Portal" option to open it in the portal:

Publish ASP.Net MVC application without .exe

After I publish my ASP.Net application using Visual Studio 2015 to my web host I get Access denied when I type the adress in the browser.
I called my web host support and asked why and he told me they don't allow .exe files, and there is .exe files inside my bin/roslyn folder.
How do I publish my project without the .exe files?
Update:
After reading the comments i found that my project is actually using Owin. I tried following these steps but when I try to uninstall Owin I get error: SignalR Core is dependent on Owin.
Is it not possible to use SignalR without self-hosting the web page with Owin?

In Visual Studio 2013 unable to migrate ASP Web Application to Azure Web Role - where is the 'Add Windows Azure Deployment Project' option?

In a new solution in VS2013, I am following the instructions on migrating an ASP Web Application to an Azure Web Role.
I created a new ASP.Net Web Application project in my solution. Right-clicking on the project does not render the option Add Windows Azure Deployment Project, and am unable to locate a VS2013-related fix.
I added a new Azure Cloud Service/WebRole project to the solution, and am wondering if I can just take guts from the first Web App and move them to the Web Role (I didn't see any new name spaces in the classes I looked at)?
The solution should contain both the Azure Cloud Service/WebRole project and the ASP.Net Web Application project. Then in the Azure Cloud Service/WebRole project, right-click on the "Roles" folder >> Add >> Web Role Project in solution.

Deploying a web site to azure as a package

I'm starting an ASP.net web project that will be hosted on Azure, but I'm not certain whether to develop the project as a regular ASP.net application and deploy it as a Web Site on Azure, or to develop it as a Cloud Application with a Web Role.
The project's nature is that of a web site (simple database back-end), but the question is one of deployment. We aim to build versions of the application and then deploy to staging and production environments, meaning the output of a build should result in a single package (similar to what's described in msdn).
There's plenty of information on how to create a service package to publish a cloud service, but articles on publishing a web site to azure follow a 'web deployment' scenario, where deployment is done via Visual Studio (subscription file from Azure etc).
Is there a way to deploy a web site to azure as a package? Or are tools like Visual Studio needed for a web deploy? If so, then is composing the project as a Cloud service with only a web role the correct choice?
I posted a comment under the question, regarding differences between Cloud Service & Web Site, but to answer your question about packaging: Cloud Services & Web Sites take two different approaches to deployment, and there's not really "works for both" packaging:
Web Sites are designed to accept your code deployment from either a source code repository. The idea is that you have a labeled version of your code, and push it out from TFS, git, Bitbucket, etc. You can also push your code up with ftp, or drop it into a dropbox folder. Because Web Sites run in IIS, and because you don't have any control over the VM farm running your Web Sites, you cannot push up startup scripts as you can with Cloud Services; you cannot install registry updates, COM objects, msi's...
Cloud Services are designed around a stateless VM model. Every time you scale out (add instances), a baseline Windows Server VM is spun up, and the contents of your deployment package is copied to the new VM instance and executed. This includes startup scripts, installers, etc. Since you have admin-level access to each VM, you can configure it as you need to, from your startup scripts / OnStart(). Definitions for each role are combined into a single deployment package. To update one or more roles, you need to redeploy the package.
Web Sites have no tooling pre-requisites, while Cloud Services require Visual Studio or Eclipse to help you manage the deployment package. You can also use PowerShell and Visual Studio command line tools to build the package, as #Ben Robinson mentioned in the comments above. You can also use PowerShell to create and administer Web Sites. Both Cloud Services and Web Sites provide Staging and Production slots.
You can't push a deployment package to Web Sites.
David's answer does a great job covering the Cloud Services option. However, I believe the Azure Website option is well-suited to your needs. You don't have to deploy using Visual Studio. Instead, you can create a publish profile in Visual Studio that creates a Web Deploy Package which is simply a ZIP file that can be published at a later time using command-line tools, no Visual Studio required. It also generates a .deploy.cmd file that you can run to deploy to a remote server, and a SetParameters.xml file with parameters such as connection string that you can modify for your target deployment environment. The .deploy.cmd file calls msdeploy.exe which does the actual deployment.
See this for more details on Web Deploy command-line deployment. There's also a ton of information on MSDeploy and its package system on Sayed Ibrahim Hashimi's blog.
If you want to be able to change files directly in the web application then it is best to use an Azure Web App, because you can access those through FTP.
However an Azure Cloud Service does not provide FTP Access, at least not a useful one that would allow you to use an FTP Client to upload files. A Cloud Service is where you do not want to be bothered too much with much of the details of hosting a web application. While an Azure Web App does much of the same thing, it also allows you to have FTP access and direct access to the files post-deployment.

Categories