使用IsLine FrameWork开发ASP.NET程序之一——命名空间与契约概览

简介:

  早就有想法写一个通用的底层框架了,毕竟平时的工作很多,使用第三方框架对项目适应度不会很满意,所以还不如自己抽时间写一套自己用着舒服的框架,于是花了几个月的时间完成了这个项目的开发,现在介绍给大家,相信这套框架一定会适合实际工作中的需要,并对开发效率有所提升。本系列的文章将分8部分为大家介绍一下这个项目和这些库文件的使用。

    本系列文章要介绍的框架名字叫做IsLine FrameWork,你可以叫他“爱因斯坦”。它不是行业业务架构,但可以作为程序员开发项目的套件,使用这套底层套件开发系统,可以简化代码,提高代码质量。IsLine FrameWork主要包括DataProvider、AppLogProvider、ExceptionProcessProvider、HttpContentProvider、IsLineFrameWork、SecurityProvider、TaskQueueProvider 7个模块,共18个命名空间,分别管理着这些Provider的主要方法以及各种类库、接口。

表 1.1 命名空间名称列表

 

IsLine.AppLog.DataTypeEnum

IsLine.AppLog.Configuration

IsLine.AppLog.AppLogProvider

 

IsLine.Data.DataTypeEnum

IsLine.Data

IsLine.Data.ContainerDefiner

IsLine.Data.DataProvider

IsLine.Data.Configuration

IsLine.Security.Cryptography

IsLine.Security.BaseFunction

 

IsLine.ExceptionProcess.DataTypeEnum

IsLine.ExceptionProcess.ExceptionProcessProvider

IsLine.ExceptionProcess.Configuration

IsLine.HttpContent.HCDataTypeEnum

IsLine.HttpContent.HttpContentProvider

IsLine.ILDateTime

IsLine.Message.Mail

 

IsLine.Provider.DataProvider

 

 

     IsLine FrameWork 的所有对外表现都是以Provider形式体现的,每一个Provider分为功能、枚举以及配置,每一个Provider都是遵从这个契约开发的,同时这也是命名空间的划分规则。

         “功能”命名空间表示该Provider的主体完成任务,“功能”命名空间会包括接口、抽象类以及对这些抽象元素的实现,它是Provider的主体部分。

“枚举”命名空间表示Provider中所有用到的需要与用户交互的数据类型。

“配置”命名空间表示Provider需要配置文件支持的信息部分,Provider运行前,系统会自动加载相应的配置文件,并加载相关节点,将这些节点内的信息提供给“功能”模块进行处理。

    现在先来简单说说各个Provider的作用。

   1.DataProvider

   与其他框架一样,DataProvider为项目提供了与数据库交互的能力,它的优点在这里不再阐述,这里只说一下它与其他框架的数据访问层不同的地方。

DataProvider同时兼容SQL SERVER与ORACLE两种数据库,并开放IDBOperater接口,用户只要实现IDBOperater接口工厂,就可以为DataProvider提供实例,从而实现使用第三种数据库,而无须修改数据库调用关键字。除此之外,DataProvider提供了静态访问与实例访问两种方式,针对不同的ADO.NET容器,用户可以选择不同的方式,而且提供统一的Dispose()方法,用户只需一次调用,即可关闭所有的Reader;而静态调用则不需对其做任何资源释放操作。静态访问与实例化访问是根据面向连接与非连接的工作方式区分的。

   DataProvider还为用户提供了RecordProvider,通过它,用户可以方便 操作.config文件、文本文件、xml文件等。

   DataProvider附带了数据容器选项:ContainerDefiner.cs,利用这个类的实例,用户可以直接调用各种ADO对象,并且容器对一些较大的数据对象进行缓存、压缩等优化,这些优化在存储时遵循“空间换时间”原则,在传输时遵循 “时间换空间”原则,前台业务性能会得到本质的提升!

   2.AppLogProvider

   AppLogProvider为用户提供了强大的日志记录功能,用户可以为程序中的每个“日志实例”提供单独的配置,每种配置有可以有不同的“Render”,每种Render代表可以使用不同的“Appender”,由Appender决定日志实例的重要等级、记录介质、记录格式、布局等属性。这一切用户可以通过配置完成,不许更改任何代码。换句话说,如果你原来的系统日志全都记录在文本文件中,现在希望将日志记录至SQL或ORACLE数据库,那么你唯一要做的事情就是更改配置,如果你非要把日志输出至电视机,那么你需要实现AppLogProvider派发的IappLogProvider接口即可实现。

如果你用过Log4Net,那么AppLogProvider你一定会很熟悉,只是AppLogProvider提供了更加灵活的配置方式。

   3.ExceptionProcessProvider

   ExceptionProcessProvider为用户提供异常控制功能,它主要分为异常记录与异常显示两个模块。

异常记录模块是基于AppLogProvider的,用户可以通过传递Exception实例达到记录异常的目的;同时ExceptionProcessProvider支持用户自定义异常模型,这个模型可以与整个软件模型一起建立,通过实体异常模型(须继承自Exception)处理事件,并实现ExceptionProcessProvider派发的接口,从而实现异常记录的功能。异常显示模块是指异常发生时,对用户展示的通知信息,这些通知的形式在ExceptionProcessProvider被分为10种,用户仅通过配置就可以实现在这10种Style之间切换。

   4.HttpContentProvider

   HttpContentProvider为用户提供了Cookie、Session、Cache的访问方法,用户通过配置文件,就可以控制这些状态量的属性,例如Cookie作用域、滑动时间,Cache的依赖方式(仅SQL SERVER)等。用户通过这些方法,可以方便建立、查询、删除、更新这些状态量。

   5.IsLineFrameWork

   IsLineFrameWork是整体IsLine架构的核心,在架构被加载之前,IsLine.dll会对整个架构进行配置,完成定制任务。

   6.SecurityProvider

   SecurityProvider为用户提供了加密与解密、强加密与解密的方法。这些加密措施为加密配置文件中的密码提供依据。

   7.TaskQueueProvider

   TaskQueueProvider是一个服务队列,用户可以用它来注册已有的服务,TaskQueueProvider将根据服务节点元素,返回实例供用户使用,从而搭建企业应用的“场”模型。


本文转自Aicken(李鸣)博客园博客,原文链接:http://www.cnblogs.com/isline/archive/2010/04/22/1717851.html,如需转载请自行联系原作者

相关文章
|
1月前
|
SQL 开发框架 数据可视化
企业应用开发中.NET EF常用哪种模式?
企业应用开发中.NET EF常用哪种模式?
|
2月前
|
开发框架 JavaScript 前端开发
5个.NET开源且强大的快速开发框架(帮助你提高生产效率)
5个.NET开源且强大的快速开发框架(帮助你提高生产效率)
|
3月前
|
SQL 开发框架 .NET
分享130个ASP整站程序源码,总有一款适合您
分享130个ASP整站程序源码,总有一款适合您
23 1
|
3天前
|
开发框架 前端开发 JavaScript
采用C#.Net +JavaScript 开发的云LIS系统源码 二级医院应用案例有演示
技术架构:Asp.NET CORE 3.1 MVC + SQLserver + Redis等 开发语言:C# 6.0、JavaScript 前端框架:JQuery、EasyUI、Bootstrap 后端框架:MVC、SQLSugar等 数 据 库:SQLserver 2012
|
29天前
|
数据安全/隐私保护 Windows
.net三层架构开发步骤
.net三层架构开发步骤
9 0
|
29天前
深入.net平台的分层开发
深入.net平台的分层开发
47 0
|
1月前
|
Windows
windows server 2019 安装NET Framework 3.5失败,提示:“安装一个或多个角色、角色服务或功能失败” 解决方案
windows server 2019 安装NET Framework 3.5失败,提示:“安装一个或多个角色、角色服务或功能失败” 解决方案
|
2月前
|
开发框架 前端开发 .NET
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
为了便于大家查找,特将之前开发的.Net Core相关的五大案例整理成文,共计440页,32w字,免费提供给大家,文章底部有PDF下载链接。
32 1
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
|
3月前
|
开发框架 JavaScript .NET
分享60个ASP精品程序源码,总有一款适合您
分享60个ASP精品程序源码,总有一款适合您
18 1
|
3月前
|
开发框架 监控 小程序
分享66个ASP精品程序源码,总有一款适合您
分享66个ASP精品程序源码,总有一款适合您
30 2