随笔分类 - C#2008与.NET 3.5 高级程序设计读书笔记
摘要:1.System.Web.UI.Control类型遍历控件代码动态添加控件代码2.ASP.NET Web空间的类别*简单控件*(功能)富控件*以数据为中心的控件*输入验证控件*Web部件控件*安全控件
阅读全文
摘要:1.HTTP的作用当一台客户计算机运行一个Web浏览器时,就会建议一个HTTP请求以访问远程服务器上的特定资源(通常是一个网页).HTTP就是一种以文本为基础的协议,它建立在一个标准的请求/响应范型上.例如,如果你输入了http://www.intertechtraining.com,浏览器就将使用名为DNS的Web技术,DNS将被注册的URL转换成IP地址.此刻,浏览器打开一个套接字连接,并且向...
阅读全文
摘要:1.Windows Forms命名空间最重要的命名空间是System.Windows.Forms,从一个较高的层次来讲,在System.Windows.Forms里的数百个类型可以按下面主要的类型分组。(1)核心架构。这些类型展现了Windows Forms程序(Form、Application等)的核心操作,还有帮助与传统的ActiveX控件实现互操作性的许多类型。(2)控件。这些类型用来建立丰...
阅读全文
摘要:1.什么是WCFWCF的全称是:Windows Communication Foundation。从本质上来说,它是一套软件开发包,是微软公司推出的符合SOA(Service Oriented Architecture)思想的技术框架。WCF为程序员提供了丰富的功能,其中包括:托管、服务实例管理、异步、安全、事务管理、离线队列等。并且WCF对产业中的标准协议进行了封装和定义,它把程序员从繁琐的通信...
阅读全文
摘要:1.LINQ to Objects术语“LINQ to Objects”是指直接对任意 IEnumerable 或 IEnumerable<T> 集合使用 LINQ 查询,无需使用中间 LINQ 提供程序或 API,如 LINQ to SQL 或 LINQ to XML。可以使用 LINQ 来查询任何可枚举的集合,如 List<T>、Array 或 ...
阅读全文
摘要:1、DataTable类ADO.NET的DataTable类运行我们通过行和列的集合来查看数据。可以通过DataAdapter对象的Fill方法将查询结果存储在DataTable中:代码在从数据库中读出数据并将其存储在DataTable对象之后,该数据即从服务器断开连接。然后就可以脱机查看DataTable对象的内容,而不会在ADO.NET和数据库之间产生任何网络通信流量。DataTable类包含...
阅读全文
摘要:1.ADO.NET数据提供程序的一些核心对象下图演示了数据提供程序的大概的大致情况,客户程序集可以是:控制台程序,WINDOWS程序,ASP.NET程序,WCF服务,.NET类库等.微软的.NET提供了SQL Server,Oracle,OLEDB/ODBC等众多数据提供程序,如下图:2.System.Data命名空间的类型2.连接对象Connection类表示与数据库的连接。可通过Connect...
阅读全文
摘要:1.对象序列化术语序列化(serialization)描述了持久化(可能还包括传输)一个对象状态到流(如文件流,内存流)的过程.当试图通过.NET远程处理层,XML Web服务或WCF这样的远程处理技术将一个对象复制到远程计算机时,具有对类型序列化的能力很关键.虽然使用.NET序列化保存对象非常简单,但幕后的调用过程却非常复杂.例如,当一个对象被持久化到流时,所有的相关数据(基类,包含的对象等)也...
阅读全文
摘要:1.System.IO命名空间System.IO命名空间主要包括基于文件和基于内存的输入输出(I/O)服务的相关类库.它们大多数包含在mscorlib.dll中,另外一部分则包含在System.dll中.System.IO命名空间中的多数类型主要用于编程操作物理目录和文件,而另一些类型则提供了从字符串缓冲区和类存区域中读写数据的方法.2.Directory(Info)和File(Info)类型如图...
阅读全文
摘要:1.进程进程是一个术语,用来描述一组资源(比如外部代码库和主线程)和程序运行所必需的内存分配.对于每个被加载到内存的*.exe,在它的生命周期中操作系统会为之创建一个单独且隔离的进程.2.线程线程是Win32进程独立的独立执行单元,每一个进程都有一个(在可执行入口点创建的)主线程,并且每个进程还可以包含以编程方式创建的额外线程.3.应用程序域(AppDomain)在以前传统的开发中我们都知道,一个...
阅读全文
摘要:1.反射在.NET中,反射(reflection)是一个运行库类型发现的过程.通过反射,可以在运行时获得程序或程序集中每一个类型(包括类、结构、委托、接口和枚举等)的成员和成员的信息。(1)命名空间(2)一些在发射中经常用到的类Assembly类Assembly类是可重用、无版本冲突并且可自我描述的公共语言运行库应用程序构造块。可以使用Assembly.Load和Assembly.LoadFrom...
阅读全文
摘要:一、程序集的一些基本概念:程序集是包含一个或多个类型定义文件和资源文件的集合。它允许我们分离可重用类型的逻辑表示和物理表示。程序集是一个可重用、可实施版本策略和安全策略的单元。它允许我们将类型和资源划分到不同的文件中,这样程序集的使用者便可以决定将哪些文件打包在一起部署。一旦CLR加载了程序集中包含清单的那个文件,它就可以确定程序集的其他文件中哪些包含了程序正在引用的类型和资源。任何程序集的使用者...
阅读全文
摘要:1.LINQ简介LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性。LINQ定义了一组标准查询操作符用于在所有基于.NET平台的编程语言中更加直接地声明跨越、过滤和投射操作的统一方式,标准查询操作符允许查询作用于所有基于IEnumerable<T>接口的源.LINQ是一系列相关的技术,试图提供一个单一的,对称的方式来与各种形式的数...
阅读全文
摘要:1.具有隐式类型的局部变量var在c#3.0里允许我们这样定义变量varage = 10;varname = "james";var time = DateTime.Now;var books = new string[]{"aa","bb"};但是也仅此而已,var只允许我们定义c#编译器通过上下文推断出类型的变量。var x; // 错误,没有用来推断类型的初始化器var y = { 1, 2...
阅读全文
摘要:1.索引器(1)定义:它使对象能够用与数组相同的方式进行索引.以这种方式访问子项的方法称为索引器方法.构建自定义集合类型时,这个特殊的语言功能特别有用类似于属性,都是通过访问器进行数据访问的.属性是对字段的封装,而索引器是对"集合、数组..."进行封装.例子:代码索引在构建自定义集合索引器方法很常见,但是需要记住,泛型直接支持这个功能代码在接口类型上定义索引器代码
阅读全文
摘要:1.委托(1)委托的定义《高级汉语大词典》中是如下解释的:托付给别的人或机构办理。要说生活中的意思其实大家都能理解,无非是“当某人(机构)需要完成一件自己不能或不应该完成的事情的时候,此人(机构)物色一个合适的且有能力完成此事的人选,然后提供必要的信息,将此事委托给物色到的人(机构)来完成。” 软件的对象方法其实是对现实世界的模拟,你可能会想现实世界里的委托哪有这么多呢?这...
阅读全文
摘要:1.System.Collections命名空间的接口2.System.Collections命名空间的类类型3.System.Collections.Generic命名空间泛型接口也模拟了System.Collections命名空间下相应的非泛型类型:ICollection<T>IComparer<T>IDictionary<TKey,TValue>IEnum...
阅读全文
摘要:1.接口定义接口的正式定义:接口就是一组抽象成员的结合.(1).一个接口定义了一个契约。(2).接口可以包容方法、C#属性、事件、以及索引器。(3).在一个接口声明中,我们可以声明零个或者多个成员。(4).所有接口成员的默认访问类型都是public。(5).如果在接口成员声明中包括了任何修饰符,那么会产生一个编译器错误。正确接口代码例子:代码错误接口代码例子代码2.对比接口类型和抽象基类虽然类类型...
阅读全文
摘要:作为一位C++出身的C#程序员,我最初对垃圾收集(GC)抱有怀疑态度,怀疑它是否能够稳定高效的运作;而到了现在,我自己不得不说我已经逐渐习惯并依赖GC与我的程序“共同奔跑”了,对“delete”这个习惯于充当罪魁祸首的关键字也渐渐产生了陌生感。然而实践证明,我对GC的过分信赖却招致了很多意想不到的错误,这也激励了我对GC的运作机制作深入一步的了解。随...
阅读全文
摘要:1.如何处理异常作为一个开发人员,你应该感受到通过try, catch, finally块来构建一个结构化异常处理机制的优点。.NET框架提供了一大堆异常处理层次来处理不同种类的异常。所有的异常都继承自Exception(基类)。你可以通过继承来实现自定义错误处理以扩展异常处理机制。不幸的是,很多开发人员都误用了这种架构能力。一个随时要记着的事是当一个异常发生在运行时时(这个架构)应该如何运作?一...
阅读全文