C#程序设计_课件_03.ppt_第1页
C#程序设计_课件_03.ppt_第2页
C#程序设计_课件_03.ppt_第3页
C#程序设计_课件_03.ppt_第4页
C#程序设计_课件_03.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于 C# 的 .NET Framework 程序设计,第1章 Microsoft .NET Framework概述 第2章 托管执行环境的介绍 第3章 使用组件 第4章 部署与版本控制 第5章 通用类型系统 第6章 类型的使用 第7章 字符串、数组和集合 第8章 委托和事件 第9章 内存和资源管理,第10章 数据流和文件 第11章 Internet访问 第12章 序列化 第13章 远程处理和XML Web Service 第14章 线程和异步编程 第15章 托管代码与非托管代码之间的互操作 第16章 使用Microsoft ADO.NET 访问数据 第17章 属性,第3章 使用组件,.NET

2、 Framework 关键开发技术的介绍 创建简单的 .NET Framework 组件 创建简单的控制台客户端程序 创建 ASP.NET 客户端应用程序,.NET Framework 关键开发技术的介绍,Windows 窗体用来创建经典图形界面桌面应用程序, System.Windows.Forms.Form 命名空间下的类用来创建Windows 窗体应用程序 Web 窗体创建以浏览器为基础的ASP.NET Web 应用程序,是事件驱动、编译执行的新型Web编程模型 ,System.Web命名空间下包含所需要的类 XML Web Service宿主在 Web 服务器上的组件,可以用标准的In

3、ternet协议来访问,3.1 .NET Framework 关键开发技术的介绍,第3章 使用组件,.NET Framework 关键开发技术的介绍 创建简单的 .NET Framework 组件 创建简单的控制台客户端程序 创建 ASP.NET 客户端应用程序,创建简单的 .NET Framework 组件,使用命名空间和声明类 创建类的实现 实现结构化异常处理 创建属性 编译组件,3.2 创建简单的 .NET Framework 组件,使用命名空间和声明类,创建命名空间 定义类,3.2.1 使用命名空间和声明类,using System; namespace CompCS .,public

4、 class StringComponent .,创建类的实现,声明一个私有的字符串数组字段 创建公有默认构造函数 用字符串来初始化字符串数组 stringSet,3.2.2 创建类的实现,stringSet = new string “C# String 0”, “C# String 1”, . ;,private string stringSet;,public StringComponent() .,实现结构化异常处理,实现 GetString 方法 创建和抛出新类型对象 IndexOutOfRangeException 异常 异常可能会在 try、catch、 finally 块的函数

5、调用中被捕获 结构化异常处理代理了COM中的以 HRESULT为基础的错误处理机制,3.2.3 实现结构化异常处理,public string GetString(int index) .,if(index = stringSet.Length) throw new IndexOutOfRangeException(); return stringSetindex;,实现结构化异常处理(续),传统上错误处理模型 编程语言上独特的错误处理过程 操作系统提供错误处理机制 .NET 运行库实现的异常处理具有下列特点 处理异常时不考虑生成异常的语言和处理异常的语言 异常处理时不要求任何特定的语言语法,

6、而是允许每种语言定义自己的语法 允许跨进程甚至跨计算机边界引发异常,3.2.3 实现结构化异常处理,实现结构化异常处理(续),与其他错误通知方法相比,异常具有若干优点 不再有出现错误而不被人注意的情况 无效值不会继续在系统中传播 不必检查返回代码 可以轻松添加异常处理代码,以增加程序的可靠性 运行库的异常处理比基于 Windows 的 C+ 错误处理更快 所有异常类都是从基类 Exception 类继承的如 IndexOutOfRangeException 类就是 Exception 类的子类,3.2.3 实现结构化异常处理,创建属性,创建一个只读属性来取得 stringSet 字符数组中元素

7、数量,3.2.4 创建属性,public int Count get return stringSet.Length; ,编译组件,用 /target:library 编译器开关创建一个 DLL 组件 否则,就会创建一个以 .exe为扩展名的可执行文件,而不是一个 DLL 的类库,3.2.5 编译组件,csc /out:CompCS.dll /target:library CompCS.cs,实验A 创建 .NET Framework 组件,练习 使用C# 创建组件,第3章 使用组件,.NET Framework 关键开发技术的介绍 创建简单的 .NET Framework 组件 创建简单的控

8、制台客户端程序 创建 ASP.NET 客户端应用程序,创建简单的控制台客户端程序,使用类库 实例化组件 调用组件 创建客户端应用程序,3.3 创建简单的控制台客户端程序,使用类库,引用库,使我们在引用类型的时候不需要整个类型名称 如果多个命名空间包含相同名称的类型,创建一个命名空间别名来消除歧义,3.3.1 使用类库,using CompCS; using CompVB;,using CSStringComp = CompCS.StringComponent; using VBStringComp = CompVB.StringComponent;,实例化组件,声明一个 StringCompo

9、nent 类型的局部变量 创建 StringComponent 类的实例,3.3.2 实例化组件,/ using CSStringComp = CompCS.StringComponent; / CSStringComp myCSStringComp = new CSStringComp();,调用组件,遍历 StringComponent 组件的字符串数组,并且把这些字符串输出到控制台,3.3.3 调用组件,for (int index = 0; index myCSStringComp.Count; index+) Console.WriteLine (myCSStringComp.Get

10、String(index); ,生成客户端应用程序,用 /reference 开关来引用包含 StringComponent 类的程序集,3.3.4 生成客户端应用程序,csc /reference:CompCS.dll,CompVB.dll /out:ClientCS.exe ClientCS.cs,实验B 创建一个简单的基于控制台的客户端应用程序,练习 使用C# 创建客户端应用程序,第3章 使用组件,.NET Framework 关键开发技术的介绍 创建简单的 .NET Framework 组件 创建简单的控制台客户端程序 创建 ASP.NET 客户端应用程序,创建 ASP.NET 客户端

11、应用程序,为 ASP.NET 应用程序编写HTML 编写 Page_Load 事件处理程序 生成 HTML响应,3.4 创建 ASP.NET 客户端应用程序,为 ASP.NET 应用程序编写 HTML,ASP.NET 文件文本文件,包含服务器端页面逻辑标签代码,动态输出内容。缺省以 aspx 为扩展名(aspx是用户控件扩展名) 在 Page 指令中指定页面特有属性这些属性是可选的,将会在页面处理过程中被页面编译器利用,3.4.1 为ASP.NET应用程序编写 HTML,导入命名空间和物理集 导入命名空间后,该命名空间下所有类和接口对该页面都是可用的 指定代码声明段 runat=“server

12、”属性表明该代码是在服务端执行而不是在客户端,为 ASP.NET 应用程序编写 HTML(续),3.4.1 为 ASP.NET 应用程序编写 HTML, , . ,多媒体演示 编写ASP.NET 应用程序的 HTML,编写 Page_Load 事件处理程序,Sub Page_Load(ByVal sender As Object, ByVal e As _ EventArgs) Dim Out = New StringBuilder() Dim Count As Integer = 0 Dim index As Integer Iterate over components strings a

13、nd concatenate Out.Append(Strings from VB Component) Dim myVBStringComp = New CompVB.StringComponent() index = 0 Do While index ) index +=1 Loop Message.InnerHtml = Out.ToString() End Sub,3.4.2 编写 Page_Load 事件处理程序,void Page_Load(Object sender, EventArgs EvArgs) StringBuilder Out = new StringBuilder(

14、); int Count = 0; / 遍历组件中的字符串数组 Out.Append(Strings from C# Component); CompCS.StringComponent myCSStringComp = new CompCS.StringComponent(); for(int index = 0; index ); / Message.InnerHtml = Out.ToString(); ,ASP.NET 中的事件 在 ASP.NET 页面执行过程中,有一系列的事件发生,其中最重要的是 Init 和 Load 事件 Init 事件发生在页面首次被实例化后 Load 事件发生在页面中的控件被实例化后,页面内容被输出之前 Load 事件很重要,它是放置动态初始化页面控件代码的最好地方,编写 Page_Load 事件处理程序(续),3.4.2 编写 Page_Lo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论