{"id":2674,"date":"2011-08-11T07:20:32","date_gmt":"2011-08-11T07:20:32","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/webdev\/2011\/08\/11\/running-asp-net-mvc-3-applications-on-azure\/"},"modified":"2022-08-11T03:46:43","modified_gmt":"2022-08-11T10:46:43","slug":"running-asp-net-mvc-3-applications-on-azure","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/running-asp-net-mvc-3-applications-on-azure\/","title":{"rendered":"Running ASP.NET MVC 3 Applications on Azure"},"content":{"rendered":"<p><font size=\"2\">Microsoft recently released the <\/font><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=156784\"><font size=\"2\">Windows Azure Tools for Microsoft Visual Studio 2010 1.4 (August 2011)<\/font><\/a><font size=\"2\"> update which includes a new ASP.NET MVC 3 Web Role project template which makes it easier to deploy an MVC 3 application to Azure. <\/font><\/p>\n<p><font size=\"2\">Let\u2019s walk through this process end-to-end.      <br \/><\/font>    <\/p>\n<p><strong><font size=\"3\"><u>Step 1 \u2013 Install the tools<\/u><\/font><\/strong><\/p>\n<ul>\n<li>\n<div><font size=\"2\">Install the <\/font><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=156784\"><font size=\"2\">Windows Azure Tools<\/font><\/a><font size=\"2\"> via WebPI. This will also install any dependencies that are missing. <\/font><\/div>\n<\/li>\n<\/ul>\n<p> <strong>   <\/p>\n<p><font size=\"3\"><u>Step 2 \u2013 Create and run the application (locally)<\/u><\/font><\/p>\n<p> <\/strong>  <\/p>\n<ul>\n<li><font size=\"2\">Launch Visual Studio <strong><u><font color=\"#000000\">as an administrator<\/font><\/u><\/strong>.<strong> <\/strong>The Azure storage emulator requires administrator privileges.         \n<p>Create a new Windows Azure Project (look under Cloud templates).<\/font>       <\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4682.NewCloudProject_thumb_5ACC36D1.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"NewCloudProject\" border=\"0\" alt=\"NewCloudProject\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4682.NewCloudProject_thumb_5ACC36D1.png\" width=\"803\" height=\"595\" \/><\/a>&#160; <\/p>\n<\/li>\n<li><font size=\"2\">In the next dialog, we see the new ASP.NET MVC 3 Web Role project type. Double click on it to add it to the Windows Azure solution. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/0207.NewMvcWebRole_thumb_1CE4E7A1.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"NewMvcWebRole\" border=\"0\" alt=\"NewMvcWebRole\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/0207.NewMvcWebRole_thumb_1CE4E7A1.png\" width=\"642\" height=\"402\" \/><\/a>       <br \/>&#160; <\/li>\n<li><font size=\"2\">Click OK.<\/font>       \n<\/li>\n<li><font size=\"2\">Next, choose the Internet project template.        \n<p><\/font><\/li>\n<li><font size=\"2\">Now take a look at the application\u2019s Web.config file. Notice that the default providers (e.g., Membership, Roles, etc.) are configured to be the new <\/font><a href=\"http:\/\/www.hanselman.com\/blog\/IntroducingSystemWebProvidersASPNETUniversalProvidersForSessionMembershipRolesAndUserProfileOnSQLCompactAndSQLAzure.aspx\"><font size=\"2\">Universal Providers<\/font><\/a><font size=\"2\"> which work with SQL Azure. These providers are pre-installed in the project template via a NuGet package. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2438.NewProviders_thumb_28686352.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"NewProviders\" border=\"0\" alt=\"NewProviders\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2438.NewProviders_thumb_28686352.png\" width=\"702\" height=\"163\" \/><\/a>&#160;&#160; <br \/>&#160; <\/li>\n<li><font size=\"2\">Run the application. Notice that the Azure Emulator for Compute and Storage spins up. There\u2019s a task tray icon for this. <\/font><\/li>\n<\/ul>\n<p><strong><font size=\"3\"><u>Step 3 \u2013 Create an Azure Hosted Service<\/u><\/font><\/strong><\/p>\n<ul>\n<li><font size=\"2\">If you don\u2019t already have an Azure account, <\/font><a href=\"http:\/\/www.microsoft.com\/windowsazure\/\"><font size=\"2\">sign-up<\/font><\/a><font size=\"2\"> for one.        \n<p><\/font><\/li>\n<li><font size=\"2\">Once the account is set up, log in to the <\/font><a href=\"https:\/\/windows.azure.com\/default.aspx\"><font size=\"2\">Azure Management Portal<\/font><\/a><font size=\"2\">. The screenshots that follow use the Silverlight based UI for the portal. If Silverlight is not installed on your machine, you\u2019ll be prompted to install it.        \n<p><\/font><\/li>\n<li><font size=\"2\">Create a new Hosted Service.<\/font>       \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/7713.AzureNewHostedService_thumb_1A29EA62.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"AzureNewHostedService\" border=\"0\" alt=\"AzureNewHostedService\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/7713.AzureNewHostedService_thumb_1A29EA62.png\" width=\"709\" height=\"566\" \/><\/a>&#160;&#160; <br \/>&#160; <\/li>\n<li><font size=\"2\">Give the new hosted service a name, a URL prefix and pick a \u201cregion\u201d for the Hosted Service.        \n<p>In \u201cDeployment options\u201d, choose \u201cDo not deploy\u201d since we don\u2019t have an Azure package for our MVC application ready to deploy yet. <\/font>      <\/p>\n<p><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"CreateHostedService\" border=\"0\" alt=\"CreateHostedService\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2867.CreateHostedService_thumb_0310B172.png\" width=\"542\" height=\"635\" \/>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Click OK and Azure will now create a new Hosted Service.<strong><\/strong>         <br \/><\/font>      <\/li>\n<\/ul>\n<p><font size=\"3\"><strong><u>Step 4 \u2013 Create a SQL Azure database<\/u><\/strong><\/font><\/p>\n<ul>\n<li><font size=\"2\">The database connection string used in the MVC application currently targets SQL Express. Since SQL Express is not supported by Azure, we need to create a SQL Azure database to target.        \n<p><\/font><\/li>\n<li><font size=\"2\">In the <\/font><a href=\"https:\/\/windows.azure.com\/default.aspx\"><font size=\"2\">Azure Management Portal<\/font><\/a><font size=\"2\">, select \u201cDatabase\u201d in the lower left hand corner of the screen, and then \u201cCreate a new SQL Azure Database\u201d.<\/font>       \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3603.ConfigureSqlAzure_thumb_278FFD68.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"ConfigureSqlAzure\" border=\"0\" alt=\"ConfigureSqlAzure\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3603.ConfigureSqlAzure_thumb_278FFD68.png\" width=\"748\" height=\"867\" \/><\/a>&#160; <\/p>\n<\/li>\n<li><font size=\"2\">In the next dialog, select your \u201cSubscription\u201d and set the \u201cServer\u201d to be \u201cNew server\u201d. Click \u201cNext\u201d. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3365.CreateNewDatabase_thumb_594E086E.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"CreateNewDatabase\" border=\"0\" alt=\"CreateNewDatabase\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3365.CreateNewDatabase_thumb_594E086E.png\" width=\"545\" height=\"492\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Then, pick a \u201cRegion\u201d to host the SQL Azure Server. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/5516.SqlAzureServerRegion_thumb_600111F1.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"SqlAzureServerRegion\" border=\"0\" alt=\"SqlAzureServerRegion\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/5516.SqlAzureServerRegion_thumb_600111F1.png\" width=\"578\" height=\"490\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Configure the SQL Azure server admin credentials. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/7266.SqlAzureServerCredentials_thumb_14A16E2D.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"SqlAzureServerCredentials\" border=\"0\" alt=\"SqlAzureServerCredentials\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/7266.SqlAzureServerCredentials_thumb_14A16E2D.png\" width=\"578\" height=\"490\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">In the next dialog, we configure firewall rules.&#160; <\/font><font size=\"2\"><font color=\"#000000\">Select the option to allow other Azure services to access this server. This will allow the MVC application to connect to this SQL server by adding a firewall rule.&#160; <br \/><\/font>        <br \/>If we wanted to connect to this SQL Azure database from our local machine, an additional firewall rule for the local machine\u2019s IP address could be added as well. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4540.ConfigureSqlAzureAllowConnectivity_t_thumb_1F5EC582.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"ConfigureSqlAzureAllowConnectivity_t\" border=\"0\" alt=\"ConfigureSqlAzureAllowConnectivity_t\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4540.ConfigureSqlAzureAllowConnectivity_t_thumb_1F5EC582.png\" width=\"461\" height=\"394\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Next, enter the \u201cDatabase name\u201d. The default \u201cEdition\u201d and \u201cMaximum size\u201d values are fine for this walkthrough. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4572.CreateSqlAzureDatabase_thumb_793677BA.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"CreateSqlAzureDatabase\" border=\"0\" alt=\"CreateSqlAzureDatabase\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/4572.CreateSqlAzureDatabase_thumb_793677BA.png\" width=\"544\" height=\"491\" \/><\/a>       <\/p>\n<\/li>\n<li><font size=\"2\">Click Finish.        \n<p><\/font><\/li>\n<li><font size=\"2\">We now have an SQL Azure database. Now we the connection string.        \n<p>Click on the database name and then the \u201cView \u2026\u201d button under \u201cConnection Strings\u201d on the right hand side of the screen.         <\/p>\n<p>Note \u2013 I\u2019ve seen the \u201cProperties\u201d pane on the right hand side of the screen disappear at times. Usually it happens when I toggle back and forth between the \u201cHost Services\u201d view and the \u201cDatabase\u201d view. One way to get it back is to log out of the portal and then log back in.<\/font>       <\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8321.ViewConnectionStrings_thumb1_thumb_78CA44C5.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"ViewConnectionStrings_thumb1\" border=\"0\" alt=\"ViewConnectionStrings_thumb1\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8321.ViewConnectionStrings_thumb1_thumb_78CA44C5.png\" width=\"750\" height=\"525\" \/><\/a>&#160; <\/p>\n<\/li>\n<li><font size=\"2\">This will display a dialog with a collection of different connection strings for the database. Make a copy of the ADO.Net connection string. We\u2019ll need this in the next step.<\/font>       \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2474.SqlAzureConnectionStringDetails_thumb_11F7E08C.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"SqlAzureConnectionStringDetails\" border=\"0\" alt=\"SqlAzureConnectionStringDetails\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2474.SqlAzureConnectionStringDetails_thumb_11F7E08C.png\" width=\"497\" height=\"347\" \/><\/a> <\/li>\n<\/ul>\n<p>&#160;<\/p>\n<p><strong><font size=\"3\"><u>Step 5 \u2013 Package the application for Azure deployment<\/u><\/font><\/strong><\/p>\n<ul>\n<li><font size=\"2\">Before we package the MVC application for Azure deployment, we need to update the database connection string to target our SQL Azure database.        \n<p>Open the Web.config file and set the connection string appropriately and make two following changes: <\/font>      <\/p>\n<ul>\n<li><font size=\"2\">Set the password for the database login which was configured previously.<\/font> <\/li>\n<li><font color=\"#000000\" size=\"2\">Add \u201c<em>MultipleActiveResultSets=True<\/em>\u201d to the connection string. This setting is required by the Universal Providers used in the MVC 3 application. <\/font><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8473.SqlAzureConnectionString_thumb_10044D63.png\"><img decoding=\"async\" style=\"border-right-width: 0px;margin: 0px 0px 0px 40px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"SqlAzureConnectionString\" border=\"0\" alt=\"SqlAzureConnectionString\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8473.SqlAzureConnectionString_thumb_10044D63.png\" width=\"714\" height=\"107\" \/><\/a><\/p>\n<blockquote>\n<p><font color=\"#ff0000\" size=\"2\">*** WARNING \u2013 Storing your connection string in your Web.config file in plaintext is not recommended for security reasons. I\u2019ve only done this here to keep this walkthrough simple.&#160; Please take the appropriate measures to ensure your connection string information is safely stored. ***<\/font><\/p>\n<\/blockquote>\n<ul>\n<li><font size=\"2\">Now we\u2019re ready to package our application for Azure deployment.        \n<p>Right click on the Azure project in Solution Explorer. There are two ways to get our application published to Azure. There\u2019s a direct \u201cPublish\u201d option and another \u201cPackage\u201d option. For this walkthrough we\u2019ll go with the simpler \u201cPackage\u201d option as it doesn\u2019t require configuring Visual Studio with additional Azure login credentials.<\/font>       <\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/6180.PackageAzureApp_thumb_7170A0D9.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"PackageAzureApp\" border=\"0\" alt=\"PackageAzureApp\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/6180.PackageAzureApp_thumb_7170A0D9.png\" width=\"287\" height=\"285\" \/><\/a>&#160; <\/p>\n<\/li>\n<li><font size=\"2\">In the package dialog, select \u201cCloud\u201d as the service configuration and \u201cRelease\u201d as the build configuration.        \n<p>If we had build specific configuration files (e.g., Web.config transform files), we could choose the appropriate build configuration to package here. <\/font><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3858.PackageDialog_thumb5_thumb_5F27DA17.png\">       <\/p>\n<p><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"PackageDialog_thumb5\" border=\"0\" alt=\"PackageDialog_thumb5\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/3858.PackageDialog_thumb5_thumb_5F27DA17.png\" width=\"335\" height=\"178\" \/><\/a>&#160; <\/p>\n<\/li>\n<li><font size=\"2\">Click Package.        \n<p>The Azure service package and Cloud configuration files will be created and a Windows Explorer window will open up to the folder where the files have been created. Make a note of this directory location. We\u2019ll need it later to find the package to deploy to Azure. <\/font><\/li>\n<\/ul>\n<p><strong><font size=\"3\"><u>Step 6 \u2013 Deploy the package on Azure<\/u><\/font><\/strong><\/p>\n<ul>\n<li><font size=\"2\">Return to the <\/font><a href=\"https:\/\/windows.azure.com\/default.aspx\"><font size=\"2\">Azure Management Portal<\/font><\/a><font size=\"2\">, select the Hosted Service previously created and then select \u201cNew Production Deployment\u201d. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/1881.NewProductionDeployment_thumb1_thumb_7ED6B3DF.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"NewProductionDeployment_thumb1\" border=\"0\" alt=\"NewProductionDeployment_thumb1\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/1881.NewProductionDeployment_thumb1_thumb_7ED6B3DF.png\" width=\"466\" height=\"349\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">In the next dialog, name the deployment and then browse locally and select the Azure service package and the Cloud configuration file previously created. <\/font>      \n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2474.DeployPackage_thumb1_thumb_0589BD63.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"DeployPackage_thumb1\" border=\"0\" alt=\"DeployPackage_thumb1\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/2474.DeployPackage_thumb1_thumb_0589BD63.png\" width=\"545\" height=\"384\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Click OK.        \n<p>A warning dialog will pop up stating there\u2019s only one instance configured for this deployment. Ignore this for now. For real world application deployment, we would likely want multiple instances to ensure high availability for the site.         <\/p>\n<p><\/font><\/li>\n<li><font size=\"2\">Now wait (ranges between 5 \u2013 15 minutes based on my experience) while the Azure Web Role machine is created. If all has gone well, we\u2019ll see a new \u201cinstance\u201d of the application with a status of \u201cReady\u201d.        \n<p>To find the URL of the site, click on the deployment in the tree and find \u201cDNS name\u201d in the \u201cProperties\u201d pane on the right hand side of the screen.<\/font>       <\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8802.AzureAppDeployed_thumb_14029DC7.png\"><img decoding=\"async\" style=\"border-right-width: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px;border-bottom-width: 0px;border-left-width: 0px;padding-top: 0px\" title=\"AzureAppDeployed\" border=\"0\" alt=\"AzureAppDeployed\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2011\/08\/8802.AzureAppDeployed_thumb_14029DC7.png\" width=\"786\" height=\"613\" \/><\/a>       <\/p>\n<p><\/li>\n<li><font size=\"2\">Click on the \u201cDNS name\u201d to browse to the site.        \n<p><\/font><\/li>\n<li><font size=\"2\">That\u2019s it. We\u2019re now up and running on Azure! <\/font><\/li>\n<\/ul>\n<p><font size=\"2\">Hope this helps.      <\/p>\n<p><\/font><a href=\"http:\/\/www.testingtoasters.com\"><font size=\"2\">Mark Berryman<\/font><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Microsoft recently released the Windows Azure Tools for Microsoft Visual Studio 2010 1.4 (August 2011) update which includes a new ASP.NET MVC 3 Web Role project template which makes it easier to deploy an MVC 3 application to Azure. Let\u2019s walk through this process end-to-end. Step 1 \u2013 Install the tools Install the Windows Azure [&hellip;]<\/p>\n","protected":false},"author":404,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[7333,7385,37],"class_list":["post-2674","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aspnet","tag-asp-net-mvc","tag-asp-net-mvc3","tag-azure"],"acf":[],"blog_post_summary":"<p>Microsoft recently released the Windows Azure Tools for Microsoft Visual Studio 2010 1.4 (August 2011) update which includes a new ASP.NET MVC 3 Web Role project template which makes it easier to deploy an MVC 3 application to Azure. Let\u2019s walk through this process end-to-end. Step 1 \u2013 Install the tools Install the Windows Azure [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/2674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/404"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=2674"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/2674\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=2674"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=2674"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=2674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}