书 名:ASP.NET程序设计基础篇 出版日期:2001/06/15 SPNET 书 号:957-2085-72-7 ISBN:957-2085-72-7 原作者:林煌章 书本简介
书 名:ASP.NET 程序设计基础篇 出版日期:2001/06/15 书 号:957-2085-72-7 I S B N:957-2085-72-7 原 作 者:林煌章 书本简介
序 从事计算机信息工作也一段不算短的时间了,每次遇到新技术的出现还是会有不少的冲击,尤其 面对这次重新打造的开发平台,心情真是又痛苦又兴奋。痛苦的是要重新打破旧有的观念,并且 面对庞大的原始文件及各种庞大的对象与架构;兴奋的是在面对新对象及架构后,深深为新技术 所提供的强悍能力及弹性喝采。虽然导入新技术势必投入时间以及其它成本来学习,但是这个新 技术在上线后所带来的优点,势必远远超过先期所投入的成本。新技术并不是要带来麻烦,而是 要带来许多利益与优点,更正旧技术的缺点与问题,让开发人员更轻松愉快的快速开发出功能强 大、执行效率佳,以及执行稳定的解决方案。 本书是针对NET初学者而写作的入门书,不是以讨论新技术到底可以做到什么程度为前提,而 是希望可以帮读者打好NET的基础,并且愉快的学习新技术。身为计算机知识工作者深深体会 到导入新技术的痛苦,所以本书力求信息单纯化、技术原理化、理论实务化,并避免让读者直接 面对杂乱无章、未经消化过的信息,而以大量的插图以及示意图,让各位读者可以愉快的享受新 技术所带来的好处 本书在一月就已经开始进行策划撰写,感谢微软出版社的黄鸿模先生以及谢慕萍副理,给予相当 大的自主权以及写作时程:并忍受作者连封面都要自己画的吹毛求疵,导致本书无法在四月顺利 付梓。感谢华彩软件教育教育中心同仁的体谅,没有在微软NET架构尚未确定、教材还尚未完 善的状况下,要求作者教授NET相关课程,让作者可以完善的整理NET技术。感谢家人及朋友 的支持及谅解,让我可以心无旁鹜专心写作。最后要感谢各位读者,您的购买就是对作者最大的 支持及鼓励 林煌章
序 从事计算机信息工作也一段不算短的时间了,每次遇到新技术的出现还是会有不少的冲击,尤其 面对这次重新打造的开发平台,心情真是又痛苦又兴奋。痛苦的是要重新打破旧有的观念,并且 面对庞大的原始文件及各种庞大的对象与架构;兴奋的是在面对新对象及架构后,深深为新技术 所提供的强悍能力及弹性喝采。虽然导入新技术势必投入时间以及其它成本来学习,但是这个新 技术在上线后所带来的优点,势必远远超过先期所投入的成本。新技术并不是要带来麻烦,而是 要带来许多利益与优点,更正旧技术的缺点与问题,让开发人员更轻松愉快的快速开发出功能强 大、执行效率佳,以及执行稳定的解决方案。 本书是针对.NET 初学者而写作的入门书,不是以讨论新技术到底可以做到什么程度为前提,而 是希望可以帮读者打好.NET 的基础,并且愉快的学习新技术。身为计算机知识工作者深深体会 到导入新技术的痛苦,所以本书力求信息单纯化、技术原理化、理论实务化,并避免让读者直接 面对杂乱无章、未经消化过的信息,而以大量的插图以及示意图,让各位读者可以愉快的享受新 技术所带来的好处。 本书在一月就已经开始进行策划撰写,感谢微软出版社的黄鸿模先生以及谢慕萍副理,给予相当 大的自主权以及写作时程;并忍受作者连封面都要自己画的吹毛求疵,导致本书无法在四月顺利 付梓。感谢华彩软件教育教育中心同仁的体谅,没有在微软.NET 架构尚未确定、教材还尚未完 善的状况下,要求作者教授.NET 相关课程,让作者可以完善的整理.NET 技术。感谢家人及朋友 的支持及谅解,让我可以心无旁鹜专心写作。最后要感谢各位读者,您的购买就是对作者最大的 支持及鼓励。 林煌章
1.ASP.NET准备工作 基本概念 什么是客户端/伺服端( Client/server) 要了解ASP之前,我们先来了解 Client及 Server间的关系。在计算机的世界里,凡是提供服务 的一方我们称为伺服端( Server),而接受服务的另一方我们称作客户端( Client)。我们最常 接触到例子是局域网络里的打印服务器所提供的打印服务:提供打印服务的计算机,我们可以说 它是打印服务器:而使用打印服务器提供打印服务的另一方,我们则称作客户端。但是谁是客户 端谁是伺服端也不是绝对的,例如倘若原提供服务之伺服端要使用其它机器所提供之服务,则所 扮演之角色即转变为客户端
1. ASP.NET 准备工作 基本概念 什么是客户端/伺服端(Client/Server) 要了解 ASP 之前,我们先来了解 Client 及 Server 间的关系。在计算机的世界里,凡是提供服务 的一方我们称为伺服端(Server),而接受服务的另一方我们称作客户端(Client)。我们最常 接触到例子是局域网络里的打印服务器所提供的打印服务:提供打印服务的计算机,我们可以说 它是打印服务器;而使用打印服务器提供打印服务的另一方,我们则称作客户端。但是谁是客户 端谁是伺服端也不是绝对的,例如倘若原提供服务之伺服端要使用其它机器所提供之服务,则所 扮演之角色即转变为客户端
客戶端 客戶端 客戶端 客戶端 客戶端 印表伺服器 使用者向和打印服务器之间的关系。 而这种关系在因特网上,就变成使用者和网站的关系了。使用者透过调制解调器等设备上网,在 浏览器中输入网址,透过HTTP通讯协议向网站提出浏览网页的要求(Request)。网站收到使 用者的要求后,将使用者要浏览的网页数据传输给使用者,这个动作称为响应( Response)。 网站提供网页数据的服务,使用者接受网站所提供的数据服务;所以使用者在这里就是客户端 响应使用者要求的网站即称为伺服端
使用者向和打印服务器之间的关系。 而这种关系在因特网上,就变成使用者和网站的关系了。使用者透过调制解调器等设备上网,在 浏览器中输入网址,透过 HTTP 通讯协议向网站提出浏览网页的要求(Request)。网站收到使 用者的要求后,将使用者要浏览的网页数据传输给使用者,这个动作称为响应(Response)。 网站提供网页数据的服务,使用者接受网站所提供的数据服务;所以使用者在这里就是客户端, 响应使用者要求的网站即称为伺服端
目錄服務伺服器 客戶端 客戶端 客戶端 郵件伺服器 應用程式伺服器 檔案與印表機伺服器 因特网上的 Client/Server 不过客户端及伺服端的关系不见得一定建立在两台分开的机器上,同一台机器中也有这种主从关 系的存在。提供服务的伺服端及接受服务的客户端也有可能都在同一台机器上,例如我们在提供 网页的服务器上执行浏览器浏览本机所提供的网页,这样在同一台机器上就同时扮演伺服端及客 户端。 使用本機電腦的服務 Client/server都在同一台机器上
因特网上的 Client/Server。 不过客户端及伺服端的关系不见得一定建立在两台分开的机器上,同一台机器中也有这种主从关 系的存在。提供服务的伺服端及接受服务的客户端也有可能都在同一台机器上,例如我们在提供 网页的服务器上执行浏览器浏览本机所提供的网页,这样在同一台机器上就同时扮演伺服端及客 户端。 Client/Server 都在同一台机器上
因特网应用程序的开发 当因特网刚开始时,网站只不过是让你简单的读取一些只读的文章或档案,只有很少数的网站另 外扩充一些外部的程序来协助网站的运行。这是因为当时要开发网站的功能不是用C语言,就 是要用cGl( Common Gateway Interface)才能做到。用C及cGl来开发动态网站,不仅有经 验的程序设计师少,而且开发的成本非常的高。另外,以前的网站都是以两层式的架构所建设 这样会让网站的延展性以及应用程序的整合性发生了一些问题。因为以前的网站程序设计师在开 发网页时,完全没有顾虑到网站之外的应用,所以使用者接口和程序代码是结合在一起的。如果 别的应用程序要使用这个相同的组件,或要连结一些站台一起工作,或进行些交易等的动作,程 序的撰写会变得很困难。但是在1996年后,微软的COM( Component Object Model)以及 AsP( Active Server Pages)技术让这些工作变的轻松简单。微软的ASP藉由简单的描述( Script) 语言来呼叫企业法则(企业处理数据的规则)以及服务器上的服务程序:而cOM的技术则让程 序设计师可以轻易的利用B、C++,或是其它支持COM这种规格的程序语言,将企业法则包 装到组件里,并把这些组件提供出来分享大家使用。所以现在的网站开发累积了丰富的经验,并 且有大致的步骤及方法来克服一些问题,例如利用网页框架( Frame)将两个网站的内容显示在 同一个浏览器中,这样可以让使用者执行作业较为直觉及便利。但是这样做也有些缺点:例如某 个网站改变了网址或是关门大吉,这些断裂连结的处理问题也蛮浪费时间。另外现在网站的开发 已经不再像以前的两层式架构那么单纯,现今的网站运用已经发展为运用大量的企业法则,或是 中间阶层组件的N层式架构和其它应用程序一起工作。所以让开发一个可靠、稳定的网站变得 极富挑战,这就是为什么一个强而有利的开发工具是如此的重要。 网页的种类 要让计算机成为网站服务器,需要安装lS( Internet Information Services)的服务软件,后面 会提到如何安装。网站服务器安装完毕后,接下来就是要设计供使用者下载的网页了。相信各位 都有浏览网页的经验,不过可能还不清楚网页还有动态网页及静态网页的差别,就让我们来厘清 这两种网页的差别 静态网页 所谓静态网页,就是网页里面没有程序代码,不会被伺服端执行。这种网页通常在伺服端以扩展 名htm或是htm储存,表示里面的内容是以HTML语言所撰写。HTML语言是由许多叫做标 注(Tag)的元素所组成。这种语言指示了文字、图形等元素在浏览器上面的配置、样式以及这 些元素实际上是存放于因特网上的哪个地方(地址),或是点选了某段文字或图形后,应该要连
因特网应用程序的开发 当因特网刚开始时,网站只不过是让你简单的读取一些只读的文章或档案,只有很少数的网站另 外扩充一些外部的程序来协助网站的运行。这是因为当时要开发网站的功能不是用 C 语言,就 是要用 CGI(Common Gateway Interface)才能做到。用 C 及 CGI 来开发动态网站,不仅有经 验的程序设计师少,而且开发的成本非常的高。另外,以前的网站都是以两层式的架构所建设, 这样会让网站的延展性以及应用程序的整合性发生了一些问题。因为以前的网站程序设计师在开 发网页时,完全没有顾虑到网站之外的应用,所以使用者接口和程序代码是结合在一起的。如果 别的应用程序要使用这个相同的组件,或要连结一些站台一起工作,或进行些交易等的动作,程 序的撰写会变得很困难。但是在 1996 年后,微软的 COM(Component Object Model)以及 ASP(Active Server Pages)技术让这些工作变的轻松简单。微软的 ASP 藉由简单的描述(Script) 语言来呼叫企业法则(企业处理数据的规则)以及服务器上的服务程序;而 COM 的技术则让程 序设计师可以轻易的利用 VB、C++,或是其它支持 COM 这种规格的程序语言,将企业法则包 装到组件里,并把这些组件提供出来分享大家使用。所以现在的网站开发累积了丰富的经验,并 且有大致的步骤及方法来克服一些问题,例如利用网页框架(Frame)将两个网站的内容显示在 同一个浏览器中,这样可以让使用者执行作业较为直觉及便利。但是这样做也有些缺点:例如某 个网站改变了网址或是关门大吉,这些断裂连结的处理问题也蛮浪费时间。另外现在网站的开发 已经不再像以前的两层式架构那么单纯,现今的网站运用已经发展为运用大量的企业法则,或是 中间阶层组件的 N 层式架构和其它应用程序一起工作。所以让开发一个可靠、稳定的网站变得 极富挑战,这就是为什么一个强而有利的开发工具是如此的重要。 网页的种类 要让计算机成为网站服务器,需要安装 IIS(Internet Information Services)的服务软件,后面 会提到如何安装。网站服务器安装完毕后,接下来就是要设计供使用者下载的网页了。相信各位 都有浏览网页的经验,不过可能还不清楚网页还有动态网页及静态网页的差别,就让我们来厘清 这两种网页的差别。 静态网页 所谓静态网页,就是网页里面没有程序代码,不会被伺服端执行。这种网页通常在伺服端以扩展 名 .htm 或是 .html 储存,表示里面的内容是以 HTML 语言所撰写。HTML 语言是由许多叫做标 注(Tag)的元素所组成。这种语言指示了文字、图形等元素在浏览器上面的配置、样式以及这 些元素实际上是存放于因特网上的哪个地方(地址),或是点选了某段文字或图形后,应该要连
结到哪个网址。我们在浏览这种扩展名为htm的网页的时候,网站服务器不会执行任何程序就 直接就会把档案传给客户端的浏览器直接进行解读的工作。所以除非网站设计师有更新过网页档 案的内容,否则网页的内容是不会因为执行程序而出现不同的内容。我们在第二章:HTML语言 会提到更多如何使用HTML语言。 客戶端 網站伺服器 網際網路 动态网页 所谓动态网页,就是网页内含有程序代码,并会被伺服端执行。这种网页通常在伺服端以扩展名 asp或是aspx储存,表示里面的内容是 Active Server Pages(ASP)动态网页,有需要执行的 程序。使用者要浏览这种网页时必需由伺服端先执行程序后,再将执行完的结果下载给客户端的 浏览器。这种动态网页会在伺服端执行一些程序,由于执行程序时的条件不同,所以执行的结果 也可能会有所不同,所以称为动态网页
结到哪个网址。我们在浏览这种扩展名为 .htm 的网页的时候,网站服务器不会执行任何程序就 直接就会把档案传给客户端的浏览器直接进行解读的工作。所以除非网站设计师有更新过网页档 案的内容,否则网页的内容是不会因为执行程序而出现不同的内容。我们在第二章:HTML 语言 会提到更多如何使用 HTML 语言。 动态网页 所谓动态网页,就是网页内含有程序代码,并会被伺服端执行。这种网页通常在伺服端以扩展名 asp 或是 aspx 储存,表示里面的内容是 Active Server Pages(ASP)动态网页,有需要执行的 程序。使用者要浏览这种网页时必需由伺服端先执行程序后,再将执行完的结果下载给客户端的 浏览器。这种动态网页会在伺服端执行一些程序,由于执行程序时的条件不同,所以执行的结果 也可能会有所不同,所以称为动态网页
網際網路 客戶端 客戶端向網站伺服器提出瀏覽網頁要求 網站伺服器 網際網路 客戶端 由網站伺服器依據動態網頁 的執行條件·動態產生網頁 網站伺服器 網際網路 客戶端 將產生的網頁下載至客戶端顯示 網站伺服器 NET Framework Microsoft Visual Studio. NET简介 Web应用程序(以因特网为基础的应用程序)的优点在于可以让企业间的商业数据及交易等行 为,透过因特网的通讯来彼此交换讯息。这样不但可以节省数据交换的时间,而且可以简化流程 但是在新一代的NET开发平台还没有出现之前,要让因特网应用程序达到上述的功能是一项浩 大的工程。牵涉到的技术及程序开发语言,可能包括了HTML、ASP、 VBScript、 JavaScript、 C++、ADO、sQL、coM、MTS等。这样的环境对于开发人员来说,想要快速的开发一个功能 强大且稳定可靠的Web应用程序,不是一项轻松的工作。 之前的 Microsoft Visual StudioTM(微软的解决方案开发平台)及 Windows上的一些架构及服 务,已经帮助程序设计师由单机平台的程序开发转为主从式( Client/Server)的架构来开发应用 程序。但是对于现在的环境而言,因为企业的客户或供货商等所使用的系统或软件可能不尽相同
.NET Framework Microsoft Visual Studio.NET 简介 Web 应用程序(以因特网为基础的应用程序)的优点在于可以让企业间的商业数据及交易等行 为,透过因特网的通讯来彼此交换讯息。这样不但可以节省数据交换的时间,而且可以简化流程。 但是在新一代的 .NET 开发平台还没有出现之前,要让因特网应用程序达到上述的功能是一项浩 大的工程。牵涉到的技术及程序开发语言,可能包括了 HTML、ASP、VBScript、JavaScript、 C++、ADO、SQL、COM、MTS 等。这样的环境对于开发人员来说,想要快速的开发一个功能 强大且稳定可靠的 Web 应用程序,不是一项轻松的工作。 之前的 Microsoft Visual StudioTM(微软的解决方案开发平台)及 Windows 上的一些架构及服 务,已经帮助程序设计师由单机平台的程序开发转为主从式(Client/Server)的架构来开发应用 程序。但是对于现在的环境而言,因为企业的客户或供货商等所使用的系统或软件可能不尽相同
开发人员所要面对的挑战是要如何整合所有的异质性资源,所以必须把焦点转到如何发展分布式 的因特网应用程序架构,好整合这些存在于不同平台或不同软件的异质资源 目前全世界有超过六百万的专业程序设计师,而百分之70以上的人使用微软的 Visual studio开 发平台:现今最受欢迎的架构则为主/从式的架构,而发展最快速的架构则是以Web为基础的架 构。在这种架构下程序逻辑及数据的处理都是在伺服端,使用者是透过网络以浏览器来存取伺服 端的数据。这种架构的开发工具,微软早在前两版的 sual Studio中透过 Active Server Pages (ASP)以及s30就已经提供了。为了因应Web架构的快速发展及广大程序开发人员的需求, 微软亦举办了不下百场的研讨会和开发人员沟通、交换意见;就是为了提供给开发人员更好的解 决方案开发平台。而这个新一代开发平台目前已经推出了,即为 Visual studio NET。Vsua Studio net开发平台里面包含sua| Basic. net、C#、 Visual c++、 ASP NET以及sua FoxPro。为了让这套开发平台更容易开发以因特网为基础的应用程序,这个开发平台做了许多 和以往不同的改革,这个改革就是 NET Framework。NET架构(就是 NET Framework,NET 念作 dot Net)就是为了让开发分布式因特网应用程序架构变得更简单容易而发展出来的。 Microsoft Visual studionet 微软新一代开发平台sua| Studio. NET的标志。 NET Framework NET Framework是微软的几个开发团队一起努力发展的成果,最主要用来产生一个可以用来快 速开发、部署网站服务及应用程序的开发平台。这个架构是两个项目的结果:第一个项目的目的 是用来改善 Windows作业平台上的程序开发,特别是改善cOM( Component Object Model 组件对象模块。一种微软所制定的软件技术:让对象的功能可以被其它软件所叫用,可以让组件 重复使用、容易更新及维护);第二个项日则是制作一个以发展服务( Service)软件为目标的 开发平台。这两个项目团队三年多前就已经在一起工作,他们希望可以发展出一种可以快速开发 出以因特网为基础,而且易学易用的开发平台。为了要达到这些目标,所以 Net framework在 设计时加入了下列特色
开发人员所要面对的挑战是要如何整合所有的异质性资源,所以必须把焦点转到如何发展分布式 的因特网应用程序架构,好整合这些存在于不同平台或不同软件的异质资源。 目前全世界有超过六百万的专业程序设计师,而百分之 70 以上的人使用微软的 Visual Studio 开 发平台;现今最受欢迎的架构则为主/从式的架构,而发展最快速的架构则是以 Web 为基础的架 构。在这种架构下程序逻辑及数据的处理都是在伺服端,使用者是透过网络以浏览器来存取伺服 端的数据。这种架构的开发工具,微软早在前两版的 Visual Studio 中透过 Active Server Pages (ASP)以及 IIS 3.0 就已经提供了。为了因应 Web 架构的快速发展及广大程序开发人员的需求, 微软亦举办了不下百场的研讨会和开发人员沟通、交换意见;就是为了提供给开发人员更好的解 决方案开发平台。而这个新一代开发平台目前已经推出了,即为 Visual Studio.NET。Visual Studio.NET 开发平台里面包含 Visual Basic.NET、C#、Visual C++、ASP.NET 以及 Visual FoxPro。为了让这套开发平台更容易开发以因特网为基础的应用程序,这个开发平台做了许多 和以往不同的改革,这个改革就是 .NET Framework。 .NET 架构(就是 .NET Framework,.NET 念作 dot Net)就是为了让开发分布式因特网应用程序架构变得更简单容易而发展出来的 。 微软新一代开发平台 Visual Studio.NET 的标志。 .NET Framework .NET Framework 是微软的几个开发团队一起努力发展的成果,最主要用来产生一个可以用来快 速开发、部署网站服务及应用程序的开发平台。这个架构是两个项目的结果:第一个项目的目的 是用来改善 Windows 作业平台上的程序开发,特别是改善 COM(Component Object Model, 组件对象模块。一种微软所制定的软件技术;让对象的功能可以被其它软件所叫用,可以让组件 重复使用、容易更新及维护);第二个项目则是制作一个以发展服务(Service)软件为目标的 开发平台。这两个项目团队三年多前就已经在一起工作,他们希望可以发展出一种可以快速开发 出以因特网为基础,而且易学易用的开发平台。为了要达到这些目标,所以.Net Framework 在 设计时加入了下列特色:
透过因特网的标准做整合 以XML( eXtensible Markup Language,延伸标注语言)及SOAP( Simple Object Access Protoco,简单对象存取协议)等标准通讯协议,将各种由不同环境所组成的应用程序及组件整 合在一起工作 松散的整合组件 大多数具延展能力(可扩充功能)的系统,现阶段是以「异步讯息」为架构而建立的。要建立这 种多层的架构非常复杂,而且工具很少。 NET Framework不需要很严谨的定义每个组件的结构 即可很轻松的整合,这样可提高程序的延展性。 支持多种程序语言 许多程序设计师会使用多种语言来开发他们的解决方案,这是因为每种语言都有它的长处。例如 某些语言对于数值计算效率较好,某些语言对于数据库的操作较为方便,而某些语言又有大量的 链接库可供使用:所以没有办法强迫别人只学一种程序语言。 NET Framework把这些语言整合 起来,可以让开发人员使用不同的程序语言来开发解决方案,让程序设计师可以选择他们专长的 程序语言,企业则可省去重新训练员工的成本。 提高程序设计师的生产力 现今程序设计师人才非常缺乏,程序设计师在人力不足的情形之下就必需提高生产力,因为每个 项目的时程很可能很急促:况且公司也希望赶快结案好再进行下一个项目。正因如此,NET Framework的开发团队希望尽可能减少写程序会发生的问题,让程序设计师专心于撰写企业法 则(企业处理数据的规则)。所以 NET Framework有些节省时间的特色,例如容易使用的自 动交易机制、自动内存管理,以及丰富的控件 完善的数据保全 目前因特网最受大家注目的,就是它的安全性。要设计一个安全性完善的因特网应用程序,在设 计时就必须考虑所有组件的保全设计,而不能仅做一部分而已。 NET Framework在设计安全模 型时时即考虑到这点,将所有的数据与程序代码做完善的安全防护
透过因特网的标准做整合 以 XML(eXtensible Markup Language,延伸标注语言)及 SOAP(Simple Object Access Protocol,简单对象存取协议)等标准通讯协议,将各种由不同环境所组成的应用程序及组件整 合在一起工作。 松散的整合组件 大多数具延展能力(可扩充功能)的系统,现阶段是以「异步讯息」为架构而建立的。要建立这 种多层的架构非常复杂,而且工具很少。.NET Framework 不需要很严谨的定义每个组件的结构 即可很轻松的整合,这样可提高程序的延展性。 支持多种程序语言 许多程序设计师会使用多种语言来开发他们的解决方案,这是因为每种语言都有它的长处。例如 某些语言对于数值计算效率较好,某些语言对于数据库的操作较为方便,而某些语言又有大量的 链接库可供使用;所以没有办法强迫别人只学一种程序语言。.NET Framework 把这些语言整合 起来,可以让开发人员使用不同的程序语言来开发解决方案,让程序设计师可以选择他们专长的 程序语言,企业则可省去重新训练员工的成本。 提高程序设计师的生产力 现今程序设计师人才非常缺乏,程序设计师在人力不足的情形之下就必需提高生产力,因为每个 项目的时程很可能很急促;况且公司也希望赶快结案好再进行下一个项目。正因如此,.NET Framework 的开发团队希望尽可能减少写程序会发生的问题,让程序设计师专心于撰写企业法 则(企业处理数据的规则)。所以 .NET Framework 有些节省时间的特色,例如容易使用的自 动交易机制、自动内存管理,以及丰富的控件。 完善的数据保全 目前因特网最受大家注目的,就是它的安全性。要设计一个安全性完善的因特网应用程序,在设 计时就必须考虑所有组件的保全设计,而不能仅做一部分而已。.NET Framework 在设计安全模 型时时即考虑到这点,将所有的数据与程序代码做完善的安全防护