ESFramework源自于我最初的EnterpriseServerBase类库,它的主要目的是简化、加速C/S应用的构建。这方面的工作主要集中在ESFramework.Network命名空间和ESFramework.Architecture命名空间。额外的,ESFramework仍然包含了原EnterpriseServerBase中的数据访问类库(ESFramework.DataAccess),用过XCodeFactory的朋友一定对这个命名空间非常熟悉,该类库的源码也随ESFramework框架一起发布。下图是ESFramework的顶层目录图:

想研究ESFramework的朋友请从Network文件夹(对应ESFramework.Network命名空间)入手,Architecture建立在ESFramework.Network之上。Addins目录是关于插件的解决方案,DataAccess目录是数据访问解决方案,与前面的几个命名空间是相互独立的,主要为XCodeFactory所用。而BaseElement文件夹中的内容就比较杂了,有关于IO的、算法的、数据结构的、AOP的等等,大家在研究ESFramework的时候,最好先不要关注这个文件夹中的东东,虽然其他几个空间会引用一些该文件夹中的类。前面关于ESFramework的介绍主要集中在ESFramework.Network和ESFramework.Architecture之中。
下图是ESFramework.Network的空间结构:
想研究ESFramework的朋友请从Network文件夹(对应ESFramework.Network命名空间)入手,Architecture建立在ESFramework.Network之上。Addins目录是关于插件的解决方案,DataAccess目录是数据访问解决方案,与前面的几个命名空间是相互独立的,主要为XCodeFactory所用。而BaseElement文件夹中的内容就比较杂了,有关于IO的、算法的、数据结构的、AOP的等等,大家在研究ESFramework的时候,最好先不要关注这个文件夹中的东东,虽然其他几个空间会引用一些该文件夹中的类。前面关于ESFramework的介绍主要集中在ESFramework.Network和ESFramework.Architecture之中。
下图是ESFramework.Network的空间结构:
Tcp文件夹是针对Tcp协议的解决方案,Udp文件夹则针对Udp协议。特别注意Passive文件夹,该文件夹为C/S的客户端开发提供支持的最基础元素。TcpPool中是关于Tcp连接池的。Core文件夹定义了一些基础的设施,这些设施将被Tcp、Udp所公用。
Tcp文件夹中的TcpUserManagment用于管理所有在线的Tcp用户、Friends用于支持好友关系、P2PMessage用于支持点到点的消息转发(包括跨AS的)、Passive是Tcp下的客户端详细解决方案。
Udp文件夹下的几个文件夹与Tcp下的相同,目的也一样。而NAPT文件夹则给出了基于Udp的NAT/NAPT穿透的解决方案。
下图是ESFramework.Architecture空间结构:
该空间主要提供4层架构的解决方案,可以看出该空间对FS、AS、IRAS给予了支持。
上面看到的所有目录下面都还有更细微的目录,这里就不一一列出了,看到源码后自然一清二楚。无论你是想研究ESFramework还是要使用ESFramework来构建应用,最好的方法是结合即将发布的源码从这里开始。
浙公网安备 33010602011771号