最新C#程序设计_第1章.doc

上传人:1595****071 文档编号:33806880 上传时间:2022-08-12 格式:DOC 页数:16 大小:277.50KB
返回 下载 相关 举报
最新C#程序设计_第1章.doc_第1页
第1页 / 共16页
最新C#程序设计_第1章.doc_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《最新C#程序设计_第1章.doc》由会员分享,可在线阅读,更多相关《最新C#程序设计_第1章.doc(16页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精品资料C#程序设计_第1章.第1章 .NET初步1.1什么是.Netn 什么是.Net?它主要包括什么?u .Net是为简化在第三代因特网的高分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性,而构建的新一代计算和通信平台。u .Net主要包括公共语言运行时(Common Language Runtime)和.Net框架类库。n .Net主要的优点有哪些?u .Net的主要优点有跨语言、跨平台、安全、以及对开放互联网标准和协议的支持。u .Net支持多种语言的互操作,即在一种语言下开发的组件,可在另一组件下通过面向对象的继承而得以重用,目前.Net支持的语

2、言达二十多种。u .Net通过将各语言先编译成中间语言(IL),然后再执行时用即时(Just In Time)编译器将之编译成本地平台代码来实现异构平台下对象的互操作,目前.Net支持的平台有Windows,Linux和Unix的支持正在开发中。u .Net通过公共语言运行时(Common Language Runtime)来实现资源对象,类型的安全。u .Net通过对HTTP、XML、SOAP、WSDL等Internet标准的强劲支持,提供在异构网络环境下获取远程服务、连接远程设备、交互远程应用的编程界面.n .Net中的公共语言运行时(Common Language Runtime)指什么

3、?它在.Net中处什么位置?u CLR(Common Language Runtime)公共语言运行时是整个.net framework构建的基础,是实现.Net跨平台、跨语言、代码安全等核心特性的关键。它实际上是驻留在内存里的一段代理代码,负责在整个.net整个执行期间的代码管理工作,比较典型的有:内存管理、线程管理、远程管理、代码强制安全类型等。这些都可称得上.net framework的生命线。实际上,公共语言运行时代理了一部分操作系统的管理功能。n .Net框架类库是什么?包括哪些内容?u .Net框架类库是基于运行时面向对象的特性而建造的,和公共语言运行时紧密集成的一组可重用类(Cl

4、ass)的集合。它大大简化了软件开发的难度,而且很容易与第三方组件无缝集成。u .Net架构类库主要包括对以下编程模型的支持:l 控制台应用程序。l 脚本和宿主应用程序。l Windows Forms应用程序(Windows 桌面GUI应用程序)。u ASP.Net应用程序。u Web Services应用程序。u Windows 服务程序n .Net支持的开发语言有哪些?.Net语言的互操作性是指什么?u .Net声称支持市面上20多种语言,但目前只有微软官方发布的C#、Visual Basic.Net、Visual C+.Net和JScript,其他厂商声称正在开发中的支持工具有COBOL

5、、Eiffel、Perl、Smalltalk、Python。u .Net语言的互操作性是指遵循公共语言运行时(Common Language Runtime)规范的语言在对象继承方面的支持,即用一种语言在.Net平台下开发的类可在另一语言中重用,这通过一种称作微软中间语言MIL来实现,即语言编译器首先将该语言编译成微软中间语言,再在相应平台下编译出本地代码。这一切都是在公共语言运行时的规范下进行。n .Net支持的平台有哪些?它的跨平台实现得如何?u 目前支持.Net的平台有Windows XP、 Windows Server 2003、Windows 2000、 NT4 SP6a、 Wind

6、ows Me和Windows 98。其声称支持的平台有Unix,Linux等,目前有三个项目正在开发Linux下的.Net平台:Ximian公司的Mono项目、DotGNU以及 Potable.NET。n .Net与COM的关系是什么?.Net是否意味着COM的终结?u COM定义了组件对象间通信的二进制标准,.Net通过组件内置的类型系统提供了类似的机制,它为此提供了另一个途径。.Net并不意味着COM的终结,但必将大大减少开发人员对COM的依赖。.Net 支持COM和.Net组件之间的互操作性,实际上可通过Runtime Callable Wrapper(RCW)来实现在.Net中获取CO

7、M组件,通过COM Callable Wrapper(CCW)来实现在COM中获取.Net组件。n .Net中的中间语言(IL)是什么?它在.Net平台中起什么作用?开发人员可以用中间语言(IL)编程吗?u .Net中的中间语言是指可以在公共语言运行时规范下,.执行时通过即时(Just In Time)编译器转化为本地代码的,与CPU独立的一组指令集合。它在.Net平台中是实现语言互操作的一个核心环节,所有.Net平台的语言都要先被编译成中间语言(IL)。程序员也可以直接利用中间语言(IL)来编程,但不推荐那样做,中间语言对理解.Net对象某些行为和程序的调试很有帮助n .Net中的自动垃圾收

8、集是什么?它给.Net平台下的编程带来什么变化?u .Net垃圾收集器负责整个.Net运行时受管代码的内存分配与释放任务。它通过一定的优化算法来选择收集的对象和时间。程序员只有在释放大量受管资源时可以进行立即强制垃圾收集,在释放非受管资源时采用终止化(Finalize)操作来处理,需要在程序运行中释放的应该实现Dispose()方法,并明确调用。其它时间将资源的回收交由.Net垃圾收集起来做。n .Net的受管(Managed)代码与非受管(Unmanaged)代码指什么?他们的编码有什么区别?u .Net的受管代码(Managed Code)是指符合公共语言运行时(Common Langua

9、ge Runtime)规范,在内存中受运行时代码代理进行内存管理,线程管理,远程管理,代码强制安全类型的代码。非受管代码指对内存,文件,数据库等非受管资源进行操作的代码,他们通常不受运行时代码代理管理,是不安全的。对受管代码的编程只需专注于编程的逻辑,对于内存等资源的管理交由公共语言运行时(Common Language Runtime)来负责,而对非受管代码的编程,则要开发人员精心负责各种非受管资源的分配和回收工作。n .Net平台上的开发工具有哪些?目前发展到什么阶段?u .Net平台上的开发工具目前只有微软官方的Visual Studio.Net,其它Delphi.Net 及Linux下

10、的开发工具正在开发中。n .Net的网络资源有哪些?u 第三方的.net门户网站u 微软的.net门户网站u 微软的开发人员.net门户网站u c#门户网站u 老牌程序员网站的.net专版u www.c- c#门户u 微软的,webservice的门户网站u 微软的team组建的.net网站u .net最新图书门户网站u 人气最旺,技术最强的国外.net论坛1.2 Internet与Microsoft平台的演进n 微软公司的三代Internet平台u 第一代Internet:浏览器只能显示静态的网页。u 第二代Internet:Windows DNA(Distributed Internet

11、Architecture)三层式应用程序结构时代。应用程序:表示层、商业层、数据访问层。u 第三代Internet: 可编程Web时代。n .NET的技术特征u 软件变成服务u 基于XML的共同语言u 融合多种设备和平台u 新一代人机界面1.3 .NET体系结构见参考书Page 4,图1-11.4 .NET框架n .NET框架n 公共语言运行时CLR(Common Language Runtime)u 虚拟对象系统(VOS)u 即时编译u 元数据u 内存管理自动化u 解决版本与发布问题u 结构异常处理机制u 增强的完全性n 服务框架u 基类库:集合、输入/输出、字符串、数据类。u 访问操作系统

12、的类u ADO.NET类库u 调试和剖析服务等开发工具1.5 ASP.NETASP:Active Server PagesASP与ASP.NET的比较介绍在这个实践练习中, 你将创建ASP(Active Server Pages) 页面和ASP.NET页面,他们分别从数据库中取出数据并生成一个的HTML页面.在这两个例子中,数据访问的概念是相同的-它们都涉及与数据库的连接。但是收集数据和显示数据的方式是不同的。创建ASP页面1打开Visual Studio.NET集成开发环境:点击Start,点击Programs,点击Experience VS .NET Content,点击Lab 3,点击A

13、SP Source。一个名为Authors.asp的空ASP页面文件会在Visual Studio .NET IDE中打开,如图1所示。图1 ASP页面 2敲入以下代码% Language=VBScript %HTMLHEADMETA NAME=GENERATOR Content=Microsoft Visual Studio 6.0STYLEBODY font:arial H1 color:navy /STYLE/HEADBODYDIV align=centerH1Authors/H1% Connecting to a databasedim cnset cn = server.Create

14、Object(ADODB.Connection)cn.Open Provider=sqloledb; _& Data Source=(local); _& Initial Catalog=pubs; _& User ID=sa Retrieving Data via the Recordset Object.dim rsset rs = server.CreateObject(ADODB.Recordset)rs.Open select au_fname, au_lname, phone from authors order by au_lname,cn %注意:下面的代码是由静态HTML和服

15、务器端脚本构成的,用一个循环把数据集(recordset)中的所有数据遍历出来。TABLE border=1TRTHFirst Name/THTHLast Name/THTHPhone/TH/TR%do until rs.EOFResponse.Write TRResponse.Write TD & rs(au_fname) & /TDResponse.Write TD & rs(au_lname) & /TDResponse.Write TD & rs(phone) & /TDResponse.Write /TRrs.MoveNextloop%/TABLE!- Footer -h5Curre

16、nt as of %Response.Write now%/h5/DIV/BODY/HTML3点击File,再点击Save Authors.asp。4关闭IDE。观看ASP页面1观看ASP页面:点击Start,点击Programs,点击Experience VS.NET Content,点击Lab 3,再点击ASP。页面显示如图2。图2 ASP页面显示结果 创建ASP.NET页面1打开Visual Studio.NET IDE:点击Start,点击Programs,点击Experience VS.NET Content,点击Lab 3,然后点击ASP .NET VB Source。一个名为Au

17、thors VB.aspx的空ASP.NET页面文件会在Visual Studio.NET IDE打开,如图3所示。图3 ASP.NET页面 2点击Visual Studio.NET窗口左下角的HTML按钮查看页面代码3敲入以下代码注意:System.Data和System.Data.SqlClient名字空间(namespaces)被声明在页面顶端,所以这两个名字空间中的所有类可以在下面ASP.NET页面中可用。% Import Namespace=System.Data % Import Namespace=System.Data.SqlClient %HTMLHEADMETA NAME=

18、GENERATOR Content=Microsoft Visual Studio 6.0STYLEBODY font:arial H1 color:navy /STYLE/HEADBODYDIV align=centerH1Authors/H1注意:服务器端脚本与静态HTML完全分离。你可以使用任何run-time语言,例如Microsoft Visual Basic?,Microsoft? Jscript?和C#。 script language=VB runat=serverSub Page_Load(Src As Object, E As EventArgs) Dim DS As Da

19、taSetDim MyConnection As SQLConnectionDim MyCommand As SQLDataAdapterMyConnection = New SQLConnection(server=localhost;uid=sa;pwd=;database=pubs)MyCommand=New SQLDataAdapter(select au_fname as First Name, au_lname as Last Name,Phone from Authors,MyConnection)注意:下面代码中的DataSet对象取代了Recordset对象,并请注意SQLD

20、ataAdapter对象中的fill方法。DS = new DataSet()MyCommand.Fill(ds,Authors)注意:下面代码设置了DataGrid 控件的DataSource属性。注意DataSet对象中 Table集合,跟Recordset对象不同,DataSet对象可以包含多个表.grdAuthors.DataSource=ds.Tables(Authors).DefaultView注意:在下面代码中,DataGrid控件用DataBind方法载入数据,然后DataGrid控件以HTML表形式显示数据。grdAuthors.DataBind()End Sub/scrip

21、t注意:下面第一行代码往页面中嵌入了一个DataGrid对象。DataGrid控件的其它属性也可以通过加入属性/值对来设置,例如:Width=700 BackColor=#ccccff。asp:DataGrid runat=server id=grdAuthors/ !- Footer -h5Current as of %Response.Write (Now.ToString)%/h5/DIV/BODY/HTML4点击File,再点击Save Authors VB.aspx。5关闭IDE。观看ASP页面1查看ASP.NET页面:点击Start,点击Programs,点击Experience VS .NET Content,点击Lab 3,再点击ASP.NET-VB。页面显示如图4。图4 ASP.NET显示页面 结束当你完成了查看ASP.NET页面的工作,关闭所有窗口。第2章

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com