阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用Windows Azure Web Sites构建托管的Web应用

163次阅读
没有评论

共计 3062 个字符,预计需要花费 8 分钟才能阅读完成。

Windows Azure Web Sites (WAWS) 是在 Windows Azure 平台即服务 (PaaS) 框架基础上构建的服务,该框架简化了与托管云应用程序相关的部署、管理和可扩展性任务。

本文中使用 SQL Server 作为数据存储创建简单实用的 ASP.NET MVC 4 应用程序,通过示例理解 WAWS 服务的基本元素。这个简单的应用程序将支持创建、读取、更新和删除 (CRUD) 操作。

配置 WAWS 并生成 ASP.NET MVC 4 应用程序后,我们将使用 Visual Studio 2012 将应用部署至云端。

 

创建 MVC 项目

 

以管理员身份打开 Visual Studio 2012 并单击 ” 文件 ”|” 新建 ”|” 项目 ”。从 ” 已安装的模板 ” 选择 ”Web”,然后选择 ”ASP.NET MVC 4 Web Application”。命名项目名称为 MVCAzure.Website,接着您需要选择项目模板为 ”Internet 应用程序 ”,视图引擎是 Razor。

 

使用 Windows Azure Web Sites 构建托管的 Web 应用

使用 Windows Azure Web Sites 构建托管的 Web 应用

创建 ASP.NET MVC 4 Web 应用程序

 

Visual Studio 解决方案资源管理器中在 Models 文件夹下添加数据类模块,如 所示。在类模块中定义的属性将成为 SQL Database 表结构,本例中 Entity Framework 简化对象 关系映射。Entity Framework 可实现执行 CRUD 操作而无需编写复杂的 SQL 语句。

使用 Windows Azure Web Sites 构建托管的 Web 应用

图 将类添加到 Models 文件夹

 

在解决方案资源管理器中选择 Models 文件夹,从 Project 菜单中选择 Add Class…。将该类命名为 Person Person 类将成为 SQL Server Person 表的列。

public class Person

{

public int PersonID {get; set;}

public string FirstName {get; set;}

public string LastName {get; set;}

}

 

ASP.NET MVC 4 应用程序需要 controller 类来作为视图和模型之间的桥梁。

在添加 Controller 类之前,先编译 Project。从 Build 菜单选择 Build Solution。在解决方案资源管理器中,您可以右键单击 Controllers 文件夹,然后选择 ”Add | Controller”。如下图所示的 Add Controller 对话框,您按如下步骤设置:

  1. Template 下拉列表中,选择 MVC controller with read/write actions and views, using Entity Framework 选项。
  2. Model class 下拉列表中,选择 “Person” 类。
  3. Data context class 列表中,选择 <New data context…>。在显示的对话框中,将名称设置为 PersonContext,然后单击OK
  4. Views 下拉列表中,确认选择 ”Razor”
  5. 单击 Add 以完成此过程。

 

使用 Windows Azure Web Sites 构建托管的 Web 应用

图 添加 MVC Controller 类

 

 

 云端部署

 创建 WEB SITES 服务

 

您可以使用连续传递框架(如 Git 或 TFS)或简单工具(如 FTP)来部署网站。在本文中,我们将使用 Visual Studio 中的 Web 部署。

登录 Windows Azure 管理门户,登录到此 URL:manage.windowsazure.com。然后单击浏览器窗口左侧的 ”WEB SITES” 链接。接着,单击 ”NEW | COMPUTE | WEB SITE | QUICK CREATE”,键入所需的 URL,如图所示。在此我们使用了 mymsdnmagazine,这意味着我们的网站位于 http://mymsdnmagazine.azurewebsites.net。注意 URL 的名称是唯一的。

使用 Windows Azure Web Sites 构建托管的 Web 应用

Windows Azure 网站部署的快速配置

 

部署应用程序的关键步骤是获取发布配置文件,该文件包含 Visual Studio 将用于执行部署的设置。根据您所用的浏览器,您也许可以下载发布配置文件。您应在本地保存一个副本,供以后在 Visual Studio 中使用它。

 

配置数据服务

在使 ASP.NET MVC 4 应用程序运行前,需要配置数据库。

使用 Windows Azure Web Sites 构建托管的 Web 应用

SQL Database

 

单击 Add 时,系统将要求您设置登录名和密码,以及希望您的 Windows Azure SQL Database 部署所在的区域。强烈建议您选择在其中运行 WAWS 的同一数据中心,以最大限度减小延迟时间和避免带宽费用。

在我们的示例中,登录名为 DBAdministrator。如果您以后要远程进行操作或需要生成连接字符串,这可能很重要。

此处的一个重要目标是保护您的数据库服务器信息,只允许特定的 IP 地址建立入站连接。单击屏幕顶部的 配置 。您将看到当前的 IP 地址,您可以使用它创建一个规则并直接从该 IP 地址连接到服务器。

 

Visual Studio 执行 Web 部署

现在我们要在刚刚配置的服务器上创建数据库。返回 Visual Studio 并选择 ”View | Solution Explorer”。右键单击 MVCAzure.WebSite 并选择 Publish,将显示发布 Web 对话框。

此过程通过向导来完成,其中第一步是将发布配置文件加载到 Visual Studio,这样您可以大大简化部署过程。您将执行几个步骤,用于为 ASP.NET MVC 4 应用程序指定发布配置文件的详细信息,提供有关您要如何在 Microsoft 数据中心内部署应用程序的信息,其中包括 Windows Azure SQL Database 服务器的目标 URL 和位置。

通过以下方式指定 ASP.NET MVC 4 应用程序将使用的 Windows Azure SQL Database 服务器:单击对话框左侧的Setting,然后单击 PersonContext 旁边的省略号,如图所示。

使用 Windows Azure Web Sites 构建托管的 Web 应用

配置数据库连接

 

现在您将需要输入在创建数据库服务器时的信息。请注意,我们在服务器名称前面追加了 tcp。您还需要输入管理员名称(我们在前面的步骤中设置的 DBAdministrator)和密码。

使用 Windows Azure Web Sites 构建托管的 Web 应用

图 连接到服务器并创建数据库

 

单击 确定 后,会在您输入的服务器上实际创建 SQL Database。系统将要求您确认此步骤。创建数据库后,您可以从发布 Web 应用程序对话框选择 ”Publish”。您可以在 Visual Studio 中选择 View | Output 窗口查看部署期间的步骤。

部署应用程序后,可以轻松执行监视、扩展或升级网站等工作,当然首选方法是使用 Windows Azure Portal 管理这些任务,该门户提供可易于使用的仪表板。

 

总结语

Windows Azure PaaS 组件提供的功能与预置的框架(如 WordPressDrupalDotNetNuke Umbraco)结合使用,开发人员可以专心致力于构建丰富的 Web 应用程序和数据存储库���而将基础结构任务委托给 Windows Azure 平台来执行

在 Windows Azure 培训包 (http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/) 中包含更多 Windows Azure 开发的技术文档。

 

参考文献

Windows Azure Web Sites: Quick-and-Easy Hosting as a Service

http://msdn.microsoft.com/en-us/magazine/jj883953.aspx

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计3062字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中