【分享】.Net平台的RIA开发参考指南
本教程将详细介绍基于 N 层理论体系(Flash8+Xml+Asp.Net( C#)+MS SQL2000)的 RIA 开发方法,并与大家分享 Molay 的相关经验。
注意:阅读本文的示例可能需要您具备一定的 C# 以及 AS2 基础
相关的例如代码隐藏等术语以及编写规范请参阅相应的参考资料
此文参考了一些书籍资料,如有纰漏,请各位大大们指出啊
一、必要的开发环境搭建
推荐的硬件环境: 这个我就不说了,现在的基本配置就够了哈哈
推荐的软件环境:
1、操作系统:Microsoft® Windows Server™ 2003, Enterprise Edition SP1
2、.Net 集成开发环境:Microsoft® Visual Studio™ 2005
3、Flash 集成开发环境:Macromedia® Flash Professional™ 8
4、数据库服务器:Microsoft® SQL Server™ 2000
安装操作系统和FLASH8在此偶就不提了哈哈
以下 Molay 将一步步的帮助你安装和配置一个基本的 .Net 运行环境:
Step1、安装 IIS
IIS是 Internet 信息服务 的缩写,该组件负责运行和管理 Internet 和 Intranet 站点的 WEB 服务。也只有装了这个,你的 RIA 系统才有用。Win2003 自带的是 IIS6.0,比较完善的一个 IIS 版本(尽管已经发现了一个漏洞 )。
首先在“控制面版”中打开“添加或删除程序”,在弹出的面版左侧选择“添加/删除 Windows 组件(A)”
接着弹出“Windows 组件向导”,双击“应用程序服务器”进入详细选项
选中“ASP.Net”之后,后面的“Internet 信息服务(IIS)”和“启用网络 COM+ 访问”将被自动选中,这些都是 ASP.Net 运行的基础。选择完毕后点击“确定”,然后点击“下一步”就开始自动安装了。
注意:Win2003 自带的是.Net Framework 1.0,支持 .Net 1.0 的应用程序。
安装完毕后,系统就自动配置好了ASP.Net(1.0)的运行环境。
打开浏览器,输入“http://localhost”,就将出现一个默认的“网页建设中”的页面,说明本机的 IIS 运行正常。
接下来打开“资源管理器”,定位到“Win2003系统所在分区\Inetpub\wwwroot”文件夹
在里面添加一个文本文件“index.aspx”,内容如下保存:
<%@ Page Language="C#"%>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("<h1>I'm Molay!</h1>");
}
</script>
在“控制面版”的“管理工具”中找到“Internet 信息服务(IIS)管理器”,运行打开 IIS 管理器界面,在左侧的树型目录中打开“网站”——“默认网站”,此时右侧将出现“Win2003系统所在分区\Inetpub\wwwroot”文件夹下的所有内容列表,在刚刚新建的“index.aspx”文件上点击右键,选择“浏览”。
此时将出现一个浏览器窗口访问该页面,如果出现了“I’m Molay!”字样,那么恭喜你!至此,你的 IIS 以及 ASP.Net 安装成功完成。
Step2、安装 VS2005
Microsoft® Visual Studio™ 2005 是 MS 推出的基于.Net Framework 2.0 的可视化开发工具,在它之前,Molay 使用的是记事本+命令行,效率可想而知:)
Win2003自带的.Net Framework版本为1.0,安装了VS2005后系统将同时携带两套,请参考高级环境配置来设置。
注意:本文中所有的示例均需运行于.Net Framework 2.0
开始安装,首先出现的引导界面中有三个选项,分别是“安装VS2005”、“安装MSDN文档”和“检查服务更新”,点击第一个进入VS2005的安装程序
稍等片刻,出现“加载完成。单击下一步继续”的界面,点击下一步。
在出现的“选择要安装的功能”界面中,依图示选择“语言工具”里面的“Visual C#”和“Visual Web Developer”,其他选项可以按照你自己的情况选择,并且更改程序的安装路径,之后点击安装。
漫长的等待后,VS2005工具集就安装成功了,这时上一步我们安装好的IIS就自动支持了ASP.Net 2.0
安装成功后将返回初始的引导界面,第二个选项是安装帮助文档的,如果你愿意就安装。
至此,VS2005已经安装完成,你可以打开它体验下:)
Step3、配置SQL2000
Step4、高级环境配置
Other、其他注意事项
二、Asp.Net的N层模型结构简介
首先大家会疑问,为何要使用N层架构?
这是因为使用N层架构后,每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。例如,如果把数据访问代码与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的代码,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。
一个N层的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。
表现层(Presentation Layer)
表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。
在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。
业务层(Business Tier)
业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。
在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。
通常该层被划分成两个子层:业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layers,DAL)。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。
在ASP.NET中,该层可以用SqlClient或OleDb从SQL Server或Access数据库取数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。
数据层(Data Tier)
数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle,mySQL,甚至是XML。
逻辑层VS(分布式)物理层
人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同的服务器上,用附加的代码来处理层间的通信,比如remoting和web服务。
决定如何划分你的层(是物理的还是不是物理的)是非常重要的。在划分时应考虑下面因素:
1、注意如果划分成物理层,你的应用程序的速度会因为不同服务器在网络中通信的延迟而减慢。所以,如果你决定用物理层,请确保获得性能的提升大于性能的降低。
2、按照N层架构设计你的应用程序。
3、部署以及维护物理分布式的应用程序的成本是很高的。你首先需要不止一台服务器,你还需要网络硬件来连接这些服务器。在这种情况下,部署应用变得更加复杂!因此这样做之前请确定这样做是否值得。
另外还要注意,你的应用程序的每层都做何使用。你也许因为运行的多个服务都需要某一层而把该层放到别台服务器上。例如,你也许会因为给不同的用户定制不同的表现层,而将业务逻辑层放于别处;你也许会因为还有其它的应用访问同一个数据库,而把SQL server服务放到别处。
我们所讨论的广义RIA就是建立在这N层基础上的
FLASH在此仅仅作为一个用户交互界面使用
在表现层上发挥她最大的能量
至于数据处理和业务逻辑等,就交给专门的服务器后台服务,此例中是.Net
N层理论其实也适用于其他的应用程序服务器的RIA开发
该服务器可以是Microsoft公司的Asp.Net
也可以是SUN公司的J2EE
只要它能处理数据交互,什么系统都可以