Deploy Smart client to Azure Websites via FTP

Smart Client lie between thin clients and fat clients. They have few features of each.

Feature wise :

Thin Client (example: Web apps) - no installation, auto udpates

Fat Client (example: Desktop apps) - high performance, high productivity

Smart Client (example: Windows Form apps) - using internet to access data, desktop like look-and-feel

This blog is about how to create a smart client, publish it using ClickOnce and  publish it in Azure Websites.

PART 1: Create a smart Client Application

Windows forms are part of .NET framework. They are like a blank page and you can make a GUI out of it by using various controls. There are many controls such as: buttons, combo box, DataGrid, FileDialog, Picture Box, Flow Layout Panel etc. To create a Windows Forms smart client I have followed a very simple tutorial. This tutorial enables you to create a forms app - you can upload a picture from your file system, change the background color and clear the picture.

Follow the tutorial here : https://msdn.microsoft.com/en-us/library/dd492135.aspx

PART 2: Deploy your app on your PC using ClickOnce (optional, do it just for fun!)

ClickOnce is a deployment technique which you can find as a part of VS 2005 and above. IMO, it is very simple wizard that lets us publish smart client and make it accessible by website, network resource using UNC  or CD ROM/DVD ROM. Following are the step to publish using ClickOnce.

Step 1: To publish using ClickOnce, right click on the project name (in solution explorer) and click on "publish" which is 6th option from the top.

STEP 2: You will see an option to specify the location where you want publish the smart client. You can choose between file system and FTP server. I am choosing File system for now. so I will choose desktop as my location and CD ROM/DVD Rom as the source. Once you click finish your smart client will be published at the specified location.

 

PART 3: Publish the Smart Client on Microsoft Azure Website.

We will use FTP to publish the smart client. Following is the step by step tutorial.

STEP 1: Goto https://manage.windowsazure.com/ and sign in with your subscription id. Once done, "quick create" a new website.

STEP 2: Navigate to the dashboard of the website and on the right side under the heading "quick glance" click on "download the publish profile". Open or Save as per your choice. Open this publish profile, it is essentially a text file. press cltr+F and type "ftp". Find the publish url and leave it here. Now navigate to Visual Studio where you have created your smart client project.

STEP 3: in Visual Studio, right click the project name in the solution explorer and click "publish". Here click on "browse" and choose FTP server. Now open the publish profile text file that you have downloaded from the Azure portal and copy the publish url from there and paste it in the wizard. Click on next. Here copy the url of your Azure website. click on next.

STEP 4: Keep clicking next and click finish. Visual Studio will prompt you to fill username and password. For this, open the publish profile and copy paste the username and password.

 STEP 5: Click ok. Internet Explorer will pop open the website.

STEP 6: Run the application. :)

Hope this helps.