.NET综合揭秘
文章平均质量分 90
风尘浪子
IT是我最热爱的行业,我永远可以事工作于娱乐,永远生活幸福当中!
展开
-
以异步的方式操作TCP/IP套接字——以异步方式实现简单的聊天室
普通的TCP/IP开发方式大家都应该非常熟练,但在系统开发的时候往往会遇到问题。比如:在开发一个简单的聊天室的时候,一般情况下,Windows应用程序会处于同步方式运行,当监听的客户端越多,服务器的负荷将会越重,信息发送与接收都会受到影响。这时候,我们就应该尝试使用异步的TCP/IP通讯来缓解服务器的压力。这个例子里,ChatClient类使用异步的IO线程进行数据读取,这样每个一客户端的都处于一个IO线程中处理,使主线程及早得到释放,这样做就缓解了服务器端压力。原创 2011-01-14 19:10:00 · 2972 阅读 · 0 评论 -
合理使用“.NET 扩展方法”来简化代码(例子:空值判断,利用扩展方法实现LINQ操作符ForEach)
我们先简单介绍扩展方法的定义,扩展方法是用来在类型定义完成后再继续为其添加新的方法。扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。你只要在静态类的静态方法的参数前加上this,就可以生成这个类的扩展方法。如果你对LINQ的结构有了一定的了解,那么你就应该理解LINQ的表达式正是使用IEnumerable或IEnumerable的扩展方法生成的,多个LINQ的操作符都可以利用代码进原创 2011-01-19 22:33:00 · 5073 阅读 · 0 评论 -
C#综合揭秘——反射的奥妙
反射是一个程序集发现及运行的过程,通过反射可以得到*.exe或*.dll等程序集内部的信息。使用反射可以看到一个程序集内部的接口、类、方法、字段、属性、特性等等信息。在System.Reflection命名空间内包含多个反射常用的类,下面表格列出了常用的几个类。类型作用Assembly通过此类可以加载操纵一个程序集,并获取程序集内部信息Eve原创 2011-11-26 11:22:36 · 2911 阅读 · 2 评论 -
C#综合揭秘——分部类和分部方法
在面向对象的“封装闭合性”开发原则中,一向提倡的是把独立的功能封装在一个类里面的!但从Visual Studio 2005开发,系统提供了一个分部类的开发方式一直受到争议,很多人认为把同一类的功能分布不同的文件中,是打破了“封装闭合原则”,一个类的功能变得难以管理,大多数人都是在无奈的情况下才使用到分部类的方式。但在winFrom类、页面类、DataSet里面你经常可以发现分部类的身影,当你用到E原创 2011-09-14 10:36:39 · 1300 阅读 · 0 评论 -
C#综合揭秘——利用泛型与反射更新实体(ADO.NET Entity Framework)
自从ADO.NET Entity Framework面世以来,受到大家的热捧,它封装了大量代码生成的工具,用户只需要建立好实体之间的关系,系统就是会为用户自动成功了Add、Delete、CreateObject、Attach、ToList......等等方法,这些方法基本上已经包含获取、删除、插入等基本方法,使用起来非常方便。只是在实体的更新上,由于LINQ面向的是泛型对象T,所以每个对象的更新方原创 2011-11-28 12:24:53 · 7380 阅读 · 0 评论 -
C#综合揭秘——细说事务
引言其实事务在数据层、服务层、业务逻辑层多处地方都会使用到,在本篇文章将会为大家一一细说。其中前面四节是事务的基础,后面的三节是事务的重点,对事务有基础的朋友可以跳过前面四节。文章有错漏的地方欢迎各位点评。 目录一、事务的定义二、事务管理器三、在ADO.NET中实现事务四、隐式事务 TransactionScope五、在WCF中实现事务六、嵌套式原创 2012-03-09 12:35:50 · 1568 阅读 · 0 评论 -
C#综合揭秘——深入分析委托与事件
引言本篇文章将为你介绍一下 Delegate 的使用方式,逐渐揭开 C# 当中事件(Event)的由来,它能使处理委托类型的过程变得更加简单。还将为您解释委托的协变与逆变,以及如何使用 Delegate 使 Observer(观察者)模式的使用变得更加简单。在事件的介绍上,会讲述事件的使用方式,并以ASP.NET的用户控件为例子,介绍一下自定义事件的使用。最后一节,将介绍P原创 2012-03-22 19:17:12 · 8507 阅读 · 3 评论