企业库应用实践系列五:创建模板引擎Library
2009-01-09 15:55
405 查看
截至目前,微软Enterprise Library已不断更新至4.1版本,但其精髓仍然是方便开发者快速开发自己的应用程序块。目前介绍Enterprise Library的文章大部分侧重于如何应用其中已有的应用程序块,如Data Access。而对如何创建自己的Enterprise Library则鲜有涉足。本系列笔者将侧重于介绍如何基于Enterprise Library的核心——Configuration和ObjectBuilder,构建属于企业自己的应用程序块以及期间可能出现的一些问题。此方面的高手请飘过。
第一阶段:HelloWorld
第一篇:创建第一个自己的Application Block
第二篇:Application Block生成原理详解
第三篇:自定义功能类的构造函数
第二阶段:实战模板引擎
第四篇: 创建模板引擎框架
第五篇: 创建模板引擎Library
第六篇:构建模板引擎处理逻辑
第七篇:实现模板引擎
第八篇:第二阶段回顾
本篇我们将继续企业库应用实践系列旅程。接上篇,我们将为类库的正常运行继续实现相关的辅助类。
一、为类库生成的辅助类新添一个目标Configuration,将相关的类放在这个文件夹中。
将上篇中的SoureceResolveFactory类文件移至这个文件夹下。
今天其余的类文件也将全部放在此文件夹中。
二、新添用于表达配置文件中配置的SourceResolveSettings类
public class SourceResolveSettings : SerializableConfigurationSection
2
37
三、新添用于方便读取SourceResolveSettings数据的SourceResolveConfigurationView类
public class SourceResolveConfigurationView
2
40
四、创建用于表达功能实现类数据的SourceResolveData类
[Assembler(typeof(SoureceResolveAssember))]
2 public class SourceResolveData : NameTypeConfigurationElement
3
13
五、创建对象装配类(主要功能是自定义构造函数,本项目采用不带任何参数的构造函数)
public class SoureceResolveAssember : IAssembler<ISourceResolver,SourceResolveData>
2public class SoureceResolveCustomFactory : AssemblerBasedCustomFactory<ISourceResolver,SourceResolveData>
2
9
七、创建用于文件映射的类SourceResolverDataRetriever
public class SourceResolverDataRetriever : IConfigurationNameMapper
2
12
八、至此所有的类设计完成,我们再来为功能接口加上标记
[ConfigurationNameMapper(typeof(SourceResolverDataRetriever))]
2 [CustomFactory(typeof(SoureceResolveCustomFactory))]
3 public interface ISourceResolver
4
编译项目,通过。
至此,我们的类库已经成功构建。下一篇中,我们将开始分析功能接口ISourceResolver的实现。我们的实现机制将采用类似于ObjectBuilder(Enterprise Library的对象生产“流水线”)的方式,使得我们的TemplateEngineer灵活、可扩展。敬请期待。
第一阶段:HelloWorld
第一篇:创建第一个自己的Application Block
第二篇:Application Block生成原理详解
第三篇:自定义功能类的构造函数
第二阶段:实战模板引擎
第四篇: 创建模板引擎框架
第五篇: 创建模板引擎Library
第六篇:构建模板引擎处理逻辑
第七篇:实现模板引擎
第八篇:第二阶段回顾
本篇我们将继续企业库应用实践系列旅程。接上篇,我们将为类库的正常运行继续实现相关的辅助类。
一、为类库生成的辅助类新添一个目标Configuration,将相关的类放在这个文件夹中。
将上篇中的SoureceResolveFactory类文件移至这个文件夹下。
今天其余的类文件也将全部放在此文件夹中。
二、新添用于表达配置文件中配置的SourceResolveSettings类
public class SourceResolveSettings : SerializableConfigurationSection
2
37
三、新添用于方便读取SourceResolveSettings数据的SourceResolveConfigurationView类
public class SourceResolveConfigurationView
2
40
四、创建用于表达功能实现类数据的SourceResolveData类
[Assembler(typeof(SoureceResolveAssember))]
2 public class SourceResolveData : NameTypeConfigurationElement
3
13
五、创建对象装配类(主要功能是自定义构造函数,本项目采用不带任何参数的构造函数)
public class SoureceResolveAssember : IAssembler<ISourceResolver,SourceResolveData>
2public class SoureceResolveCustomFactory : AssemblerBasedCustomFactory<ISourceResolver,SourceResolveData>
2
9
七、创建用于文件映射的类SourceResolverDataRetriever
public class SourceResolverDataRetriever : IConfigurationNameMapper
2
12
八、至此所有的类设计完成,我们再来为功能接口加上标记
[ConfigurationNameMapper(typeof(SourceResolverDataRetriever))]
2 [CustomFactory(typeof(SoureceResolveCustomFactory))]
3 public interface ISourceResolver
4
编译项目,通过。
至此,我们的类库已经成功构建。下一篇中,我们将开始分析功能接口ISourceResolver的实现。我们的实现机制将采用类似于ObjectBuilder(Enterprise Library的对象生产“流水线”)的方式,使得我们的TemplateEngineer灵活、可扩展。敬请期待。
相关文章推荐
- 企业库应用实践系列四:创建模板引擎框架
- 企业库应用实践系列一:创建第一个自己的Application Block _转http://www.cnblogs.com/lvwuhuijun/articles/1366094.html
- 企业库应用实践系列二:对象创建原理详解
- 企业库应用实践系列一:Hello Library
- 企业库应用实践系列三:自定义构造函数
- 应用Selenium + NUNIT对动态WEB测试自动化(自动化测试开发实践系列)
- DataFun Talk之算法架构系列活动 ——AI在反欺诈中的应用实践
- iOS应用开发最佳实践系列一:编写高质量的Objective-C代码
- openssl之BIO系列之9---BIO对的创建和应用
- Google Android开发者文档系列-创建有内容分享特性的应用之发送简单数据到其它应用程序
- React实践系列笔记-Library
- 一步一步学Silverlight 2系列(1):创建一个基本的Silverlight应用 (转)
- ASP.NET开发实践系列课程之Web应用的安全攻防之网页木马
- 1:Win8 Metro应用开发的第一次学习1:创建一个 Metro 项目——Win8Y团队手把手教您Win8 Metro应用开发系列
- Equinox OSGi系列之 创建自己的OSGi应用项目
- 微软WPF技术应用与实践系列(窗体与导航+容器+模型+数据绑定配多个应用案例)
- [每天解决一问题系列 - 0003] 如何创建并应用自签名的证书
- 【Xamarin开发 Android 系列 9】 创建一个Json读取数据应用-列表页(中)
- 一步一步学Silverlight 2系列(1):创建一个基本的Silverlight应用
- 微软私有云Azure Pack实践系列之三创建虚拟机角色 推荐