代码改变世界

随笔分类 -  Codedom

Green.AgileMapper新增-Green.ObjectPickUper(do到dto对象的默认抽取)

2012-04-05 23:17 by 破狼, 1664 阅读, 收藏, 编辑
摘要: Green.AgileMapper意在处理领域驱动开发中对象之间的Mapper(如果你还不了解Green.AgileMapper,从这里开始Green.AgileMapper开源项目的使用(1) 和Green.AgileMapper项目(2)-新增DO和DTO代码生成,项目地址:CodePlex http://agilemapper.codeplex.com/),本项目在后期会针对领域建模提供设计时候支持,利用EF和NHibernate作为底层ORM框架产生自己的领域框架,在设计时才会采用这些组件。 在我们的领域驱动开发中,DomainObject(领域对象)是一个自然oo对象,存在许多... 阅读全文

代码生成技术--CodeDom VS T4

2010-12-23 12:52 by 破狼, 7122 阅读, 收藏, 编辑
摘要: 在微软的自家代码生成方案中我们有两种选择方式:CodeDom 和Text Template Transformation Toolkit(T4)模板。同样我们可以利用简单的String或者StringBuilder来拼接字符串,但是那对于简单的还可以,但是对于复杂的问题就。其实在ASP.NET MVC 3.0中有多处了一个更简洁语法的模板-Razor,我们同样可以运用于我们自己的代码生成中,我随便有一篇简单的介绍Razor Templating Engine,在以后有机会了会写Razor Demo。今天的主题不在这里,所以不多说了。一:简介:CodeDom:这 个类库出现在我们的.NET Fr 阅读全文

CodeDom系列目录

2010-07-09 12:17 by 破狼, 9898 阅读, 收藏, 编辑
摘要: CodeDOM 提供了表示许多常见的源代码元素类型的类型。您可以设计一个生成源代码模型的程序,使用 CodeDOM 元素 构成一个对象图。可以使用受支持的编程语言的 CodeDOM 代码生成器,将该对象图呈现为源代码。CodeDOM 也可以用于将 源代码编译成二进制程序集。 CodeDOM 的一些一般用途包括: 模板化代码生成:生成 ASP.NET、XML Web 服务客户端代理、代码向导、设计器或其他代码发出机制的代码。动态编译:支持以一种或多种语言进行代码编译。经过连续几节的CodeDom系列文章,到今天写的差不多,所以在这里记录下一个索引目录,以便在日后查阅。 CodeDom系列-开篇. 阅读全文

CodeDom六--实体类生成示例

2010-07-08 10:15 by 破狼, 4177 阅读, 收藏, 编辑
摘要: CodeDom这个东西个人觉得知识点不多,前几个续节写的已差不多了。在这节将演示一个CodeDom示例:数据库实体类的生成。这里先声明在如今的CodeSmith或者是T4模板中实现这些都很简单,并且更实用,在这里只是一个CodeDom示例,为了演示CodeDom。 在代码中位了简单、简化数据库数据信息的提取,引用了CodeSimth的SchemaExplorer.dll和SchemaExplore... 阅读全文

CodeDom系列五--动态编译

2010-07-06 09:07 by 破狼, 7333 阅读, 收藏, 编辑
摘要: 继上节我们把Code 表达式编译成为了Code代码,有时我们只想动态编译程序集,在内存中或者是硬盘上调用,这就是CodeDom的动态编译。微软在CodeDom中提供了动态编译程序,这是ICodeCompiler的用武之地了,它定义用于调用源代码编译的接口或使用指定编译器的 CodeDOM 树。可以从CodeDomProvider生成引用对象:CodeDomProvider.CreateProvid... 阅读全文

CodeDom系列四--Code生成

2010-07-05 09:19 by 破狼, 5611 阅读, 收藏, 编辑
摘要:       我们利用CodeDom技术生成了一些列Codedom Expression ,接下来的任务就是编译和生成,生成c#、Vb或者是.NET平台支持语言,编译程序集(dll或者是exe)。       CodeDomProvider:在2.0后提供了CodeDomProvider.Create... 阅读全文

CodeDom系列--事件(event)定义和反射调用

2010-06-22 13:22 by 破狼, 3729 阅读, 收藏, 编辑
摘要: CodeDom提供了对事件的支持,以及我们可以用反射机制对CodeDom生成的事件进行注册,以及调用。本节程序很简单,先贴上我将用CodeDom生成的代码:代码很简单哦,主要是看CodeDom的事件定义机制和反射调用CodeDom编译的类型方法事件。CodeDom代码为:本示例代码下载:CodeDomDemo3 阅读全文

CodeDom系列二---程序基本结构--符号三角形问题

2010-06-20 14:02 by 破狼, 4349 阅读, 收藏, 编辑
摘要: 昨天一个同学叫我帮编写一个符号三角形的c代码,今天就把它改写成用CodeDom生成的c#代码。 符号三角形:在一组字符串里(只有用空格分割的+或者-组成的字符串),在每次的相邻的两个符号比较,如果相同就在中间空格插入+,否则就插入-。一直运行到字符串里只有一个+或者-时停止,输出的字符串为符号三角形。由于是CodeDom些列,所以先介绍几个CodeDom表达式:1:CodeConditionSta... 阅读全文

CodeDom系列-开篇HelloWord

2010-06-19 09:07 by 破狼, 8227 阅读, 收藏, 编辑
摘要: 最近在自己实践一个异常扑捉设计,在模块中我觉得该给用户提供的是代码生成工具,而不是怎么去做,再自己去写代码。现在代码模板生成的有很多但我选择了用微软的CODEDOM技术来实现,由于比较熟悉,以及感觉我将只用在.NET平台是已经够强大了。最近也总想写点博客,但是不知道写些什么,所以就准备写个CODEDOM的系列。仅是开篇,就写个简单的HelloWord程序吧。CODEDOM在.NET Framewo... 阅读全文