系统解决方案篇
moon66sun
精于企业业务流程管理,流程咨询、项目实施、软件开发
展开
-
规则引擎系列:业务规则分类
在实际的项目应用中,究竟哪些应用,或者那些规则适合采用业务规则引擎来进行实现,而其他的一些规则适合采用工作流引擎或者报表引擎来进行实现。 这个问题,其实和不同规则引擎的适用面有关。一般的规则引擎,最适合是那些数据结构确定的业务规则的处理。特别是这些规则是非常雷同的,可以说是平级的,然后反复的对同一批数据进行匹配处理。比如电信计费规则,是针对用户的使用数据,有很多同级的套餐规则,然后将这些原创 2013-02-01 13:20:20 · 1181 阅读 · 1 评论 -
MyMVC 系列:上
转载自:http://www.cnblogs.com/fish-li/archive/2012/02/12/2348395.html阅读目录开始ASP.NET程序的几种开发方式介绍我的MVC框架我的MVC框架设计架构回忆以往AJAX的实现方式MyMVC中实现AJAX的方式如何使用MyMVC框架中的AJAX功能配置MyMVC框架MyMVC框架的实现原理 - 映射处理器(入口)MyMV转载 2012-05-08 11:48:41 · 1137 阅读 · 0 评论 -
AOP 系列: 使用PostSharp在.NET平台上实现AOP
http://www.cnblogs.com/leoo2sk/archive/2010/11/30/aop-postsharp.html使用PostSharp在.NET平台上实现AOP2010-11-30 20:06 by T2噬菌体, 4955 visits, 收藏,编辑摘要本文首先介绍AOP(面向方面编程)的相关概念及理论,然后介绍如何使用PostSha转载 2012-04-24 12:08:00 · 887 阅读 · 0 评论 -
AOP系列:.NET中AOP的几种实现方案
AOP在.NET中的应用,个人也属于学习阶段,欢迎大家拍砖!本文的例子模拟用户注册的场景,主要通过代码演示几种方案的实现方式。静态代理通过代理模式实现静态代理,大家一看代码基本就明白了。用户注册接口和实现public interface IUserProcessor { void RegUser(User user); } p转载 2012-04-24 11:45:18 · 627 阅读 · 0 评论 -
Castle 系列: Castle DynamicProxy动态生成透明代理类型
Castle DynamicProxy动态生成透明代理类型,实体不需要继承MarshalByRef、ContextBoundObject便可以实现代理类基于透明代理的功能,可以实现对方法调用的拦截处理,例如NHibernate用它实现延迟加载DP的使用非常简单,内部没有使用反射,而是采用Emit、委托等方式生成代理类型,调用真实类的方法,性能方面也没有太多损失基本示例引用的转载 2012-04-19 11:48:33 · 2299 阅读 · 0 评论 -
代码生成器系列:概述
代码生成的功用:为项目框架快速生成规范并符合条件的源码。减少重复工作。参考:http://msdn.microsoft.com/zh-cn/library/ms953317.aspx原创 2012-04-18 17:35:42 · 357 阅读 · 0 评论 -
ORM 系列:概述
概念 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系原创 2012-04-18 11:09:01 · 581 阅读 · 0 评论 -
CodeDom 系列:代码文档对象模型
CodeDom[1]在Microsoft .NET Framework 的中文全名是“代码文档对象模型”, 使用该模型建立的代码文档可以被.NET Framework编译成应用程序集。也就是说,你可以使用该模型“发明”一个自己的.net语言,用你的语言编写程序,再翻译成codeDom,最后编译成可以执行的.net应用程序。实际上,codedom是其他语言编译成.net 应用程序的接口,比如Delp原创 2012-04-17 13:47:43 · 358 阅读 · 0 评论 -
表现层系列:页面架构模型
几个开源项目的页面架构模型下面几个项目 Asp.Net Forums CnForumns CnBlogs(包括博客园,博客堂等)OpenLab CommunityServer hiDotNet 等等,这几个开源项目其实都是源于一个项目CommunityServer,该开源项目由Telligent Systems, Inc.公司和微软公司联合开发设计,体现了.转载 2012-04-17 12:03:32 · 414 阅读 · 0 评论 -
表现层系列:MVC vs. MVP vs. MVVM
简介 原文地址: MVC vs. MVP vs. MVVM « Niraj Bhatt – Architect's Blog 三者的目的都是分离关注,使得UI更容易变换(从Winform变为Webform),使得UI更容易进行单元测试。 2 MVC MVP 2.1 MVC 1、View接受用户的交互请求, 2、View将请求转交给Con转载 2012-04-17 14:22:39 · 503 阅读 · 0 评论 -
邮件系统系列:自主构建消息
邮件发送是信息管理系统一个常用的内置功能 。一般来说,邮件发送过程基本一样:构建消息、传递给邮件服务器、发送到收件人。管理系统中邮件发送的内容千变万化,不能在程序中固定邮件的内容格式,邮件内容一般由格式和数据构建而成,本文主要讨论自主构建消息的系统,系统目标用户可通过设置数据源、 设计邮件模板、数据绑定自主设计邮件内容。设置数据源:用xml 储存数据源结构设计邮件模板:用htm储存邮件模板原创 2012-10-10 10:54:38 · 524 阅读 · 0 评论 -
MyAjax服务端框架系列:概述
转载自:http://www.cnblogs.com/fish-li/archive/2011/03/12/1982434.html今天晒晒我的Ajax服务端框架。自从接触JQuery-EasyUI后,我对Ajax越来越感兴趣了。也慢慢的把UI开发的重心从服务器端移到客户端来了。一般说来,在Asp.net的环境中实现Ajax,要么是使用Asp.net AJAX框架,要么就要自己写些as转载 2012-05-08 13:45:48 · 764 阅读 · 0 评论 -
开源框架系列:.NET Enterprise CMS Framework --- RapidWebDev 基于XML配置的UI介绍
在前面几篇文章中我介绍了RaidWebDev的概况,然后通过过Product模块演示了如何使用RapidWebDev框架快速的开发一个业务功能。从本章开始,我将重点介绍RapidWebDev的XML可配置界面中的每个节点及属性的功能和注意事项,让大家彻底的掌握RapidWebDev动态页面的配置,结合自己的业务逻辑,给客户提供更友好的操作界面。 1. 基础和概念Rapid web转载 2012-03-27 14:44:31 · 748 阅读 · 0 评论 -
ASP.NET Web 新增 编辑时 多字段取值 解决方案
ASP.NET 开发人员在卡发时经常会碰到一个情况,就是新增的页面中字段太多,在点击保存的时候需要一个一个的赋值实体或者构建SQL语句去保存。这样不仅浪费体力还需要占用大量的文本行控件去写代码。经过构思是否可以使用一种更方便的办法去解决呢?提高代码的内聚性。 1.思路 我们知道一般新增页面最多的就是一大堆文本框让用户输入内容,然后点击保存按钮进行提交将数据持久化到数据转载 2012-04-10 15:18:49 · 445 阅读 · 0 评论 -
MyMVC 系列:下
转载自:http://www.cnblogs.com/fish-li/archive/2012/02/21/2361982.html#_label0阅读目录开始MyMVC的特点介绍示例项目关于URL路由配置MyMVC框架映射处理器(入口)内部初始化从URL到Action的映射过程PageUrl的设计思想多URL的匹配功能解决老的URL兼容问题对身份认证的支持View的设计方式Con转载 2012-05-08 11:50:58 · 1025 阅读 · 0 评论 -
ASP.NET中采用Reflection机制把页面控件元素和对象联系起来。
最近在做一个项目,涉及到的实体很多,每个实体都需要做一个用户界面接受用户输入,这样在把实体对象展开到界面控件和从界面控件收集实体属性要写的代码就相当的多,但是这些代码都是简单的get和set操作。参考示例:http://msdn.microsoft.com/zh-cn/library/aa478957.aspx于是我写了一个简单的赋值类:using system;using s转载 2012-04-10 18:17:48 · 444 阅读 · 0 评论 -
邮件功能相关资源
http://www.cnblogs.com/heyuquan/p/net-batch-mail-send-async.html原创 2015-05-05 16:21:51 · 425 阅读 · 0 评论 -
规则引擎系列:规则引擎发展(如何在工作流等开发平台中集成规则引擎)
基于web应用来说,通常分为三部分:界面层、业务逻辑层和持久层。所有的开发平台一般都是在这三方面做工作。由于这三层的特点有些不同,因此我们会采用不同的实现方式来实现。 界面层:强调的是操作界面,注重采用所见即所得的方式来调整界面布局以及界面样式。更多的我们可以会做一个表单设计器。业务逻辑层:强调逻辑调整的便利性,一般采用动态语言或者规则引擎来实现逻辑的配置。持久层:采用领域模型,根原创 2013-02-01 13:53:43 · 2337 阅读 · 1 评论 -
SharePoint2010系列:文档库编辑视图中项目的分组依据
SharePoint2010的文档库可以容纳上百万的数据,如果要想查找出本年或上一年的所有相关数据,单凭一个一个的查找是相当困难的,即使使用搜索条件也会搜索到很多的数据,很难达到一种归类的效果。在SharePoint 2010文档库的视图中,是可以按某个条件进行分组的,比如按年进行分组,则在页面上会把存在的项目数据按年进行归类,可以一目了然的看到每年的相关数据。如需要对SharePoint 2转载 2013-04-16 17:23:21 · 1065 阅读 · 0 评论 -
SharePoint 系列:SharePoint 2010企业应用解决方案
SharePoint 2010企业应用解决方案编辑点评:2010年5月13日微软发布的SharePoint 2010是新一代的企业协作解决方案,通过构建高效、灵活、易管理的网络社区平台,让企业员工可以更好地学习、沟通、协作。微软每次推出新产品几乎都会引起用户的困惑,是否应该采用新的解决方案,新的产品能够带来怎样的改变呢?现在我们就来为大家解决关于SharePoint 2010的问题原创 2013-03-19 15:57:13 · 1598 阅读 · 0 评论 -
PowerDesigner系列:使用PowerDesigner创建数据库表图文并茂版
使用建数据库表。一直很忙,没有时间写东西。这次搞点会声会色的,嘿嘿此技能为项目经理必备技能。本次主角: 在下建立一项目:类型的在处选择建立表图:在工具条上选择表格工具,创建出一个表来。然后双击他,可以对其进行修改。改名字为用户表,建立三个字段,为主键:再建立一个表:地址原创 2012-06-13 14:52:09 · 565 阅读 · 0 评论 -
ORM 系列:一个个人ORM映射框架
转载:http://www.cnblogs.com/qingyuan/category/239086.html个人ORM映射框架中的三个核心库:实体—数据库 映射特性关系:http://www.cnblogs.com/qingyuan/archive/2010/04/02/1702998.html 实体分析器:http://www.cnblogs.com/qingyuan/ar转载 2012-04-17 15:47:53 · 1242 阅读 · 0 评论 -
领域模型系列:贫血、充血模型(非常经典)
为了补大家的遗憾,在此总结下ROBBIN的领域模型的一些观点和大家的补充,在网站和演讲中,robbin将领域模型初步分为4大类:1,失血模型2,贫血模型3,充血模型4,胀血模型那么让我们看看究竟有这些领域模型的具体内容,以及他们的优缺点: 一、失血模型 失血模型简单来说,就是domain object只有属性的getter/setter方法的纯数据类,所有的转载 2012-04-28 17:34:23 · 1680 阅读 · 0 评论 -
log4net 框架系列:类型转换分析
log4net 框架 类型转换源码分析:源码唯一Util 文件夹下 TypeConverters 、PatternStringConverters 文件夹下,相关类图:原创 2012-03-29 17:41:53 · 317 阅读 · 0 评论 -
SQL Server 2005报表服务入门
一、创建并部署基本报表 在开发程序中,报表总是一件繁琐工作。其实报表就是格式化数据输出,真正需要编程的地方很少。而且报表工具也比较繁琐,要编写一个漂亮的报表,需要深入了解报表工具。SQL Server 2005报表服务(SSRS 2005)简单易用。SSRS 2005是SQL Server 2005的一个组件。购买SQL Server时就内置在其中了。它可以转载 2012-03-28 17:05:46 · 1650 阅读 · 1 评论 -
通用报表解决方案:SQL Server Reporting Services是什么
SQL Server Reporting Services是什么? SQL Server Reporting Services(SSRS),微软企业级报表平台,和SQL Server Integration Service以及SQL Server Analysis Services一样,都是微软BI套装的一部分。虽然SSRS和其他微软BI产品集成的很好,但SSRS和其他平台的产品集成也很原创 2012-03-28 16:46:06 · 7207 阅读 · 0 评论 -
SOA之路:基于Microsoft.net 平台的SOA 架构设计与开发
原创 2012-03-28 11:11:33 · 1429 阅读 · 0 评论 -
开源框架系列:.NET Enterprise CMS Framework --- RapidWebDev 快速开发产品管理示例程序
在上一篇文章中,介绍了搭建RapidWebDev的运行环境和一些配置项,并且演示了将自己的业务模块添加到系统中。当然,上一张中的那个Product还算不上是个业务模块,所以本章我准备对其进行扩充。同时给大家展示下如果通过RapidWebDev实现一个完整的业务功能。 首先,我们按照以往的思路,先将上一章中的t_product进行一定的扩展,如下图: 在这里,我增加了一张T_PR原创 2012-03-27 14:42:39 · 713 阅读 · 0 评论 -
开源框架系列:.NET Enterprise CMS Framework --- RapidWebDev
RapidWebDev开源框架是什么?RapidWebDev开发框架是一个完全开源的企业应用快速开发框架,它提供了在.Net中经常会用到的组件和服务,包括常用组件、业务平台、扩展模型和快速Web四个部分。未来会添加文件管理、社区和搜索/索引组件。常用组件:一些常用的组建和可服用的API集合,它包括了公共方法、异常处理、缓存、验证、全球化/本地化、动态类生成器、Data Context工厂、转载 2012-03-27 10:25:33 · 671 阅读 · 0 评论 -
开源框架系列:.NET Enterprise CMS Framework --- RapidWebDev 入门
Rapid Web快速入门系统需求RapidWebDev需要的系统环境如下: .NET Framework 3.5 SP1 ASP.NET MVC 1.0 ASP.NET State Service (这个不是必须的,你可以在web.config中进行配置,默认使用本地的session state服务) DTC Service原创 2012-03-27 14:41:14 · 646 阅读 · 0 评论 -
三层框架系列:概述
原创 2012-02-24 11:06:18 · 340 阅读 · 0 评论 -
设计模式系列:面向对象的系统设计
面向对象的设计:(三层从上到下,从下到上)需求分析时:面对现实场景进行面向对象分析 把现实场景中的事物抽象成对象 并记录对象的属性 方法(动作) , 通常事物的基本属性抽象成 mode 事物拥有基本方法 抽象成 add delete chenger select (DAL)这是系统赋予对象的基本方法 ,是对象(及对象之间)进行其他动作 运动的基础,我们一般把对象 对象之间 (依据现实业务需原创 2012-02-23 14:00:52 · 486 阅读 · 0 评论 -
开发人员应该下载的十种必备工具
发布日期: 7/20/2004 | 更新日期: 7/20/2004本文自发布以来已经增加了新信息。请参阅下面的编辑更新。本文讨论:•用于编写单元测试的 NUnit•用于创建代码文档资料的 NDoc•用于生成解决方案的 NAnt•用于生成代码的 CodeSmith•转载 2012-03-31 09:54:36 · 599 阅读 · 0 评论 -
Log4net系列:如何使用Log4net创建日志及简单扩展
1、概述log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。本文主要是介绍如何在Visual Studio2008中使用log4net快速创建系统日志,如何扩展以输出自定义字段。2、一个简单的使用实例第一步:在项目中添加对log4net.dll的引用,这里引用版本是1.2.10.0。转载 2012-04-01 17:57:25 · 1317 阅读 · 0 评论 -
软件开发模型系列:概述
软件开发模型瀑布模型、迭代模型、喷泉模型、演化模型、智能模型瀑布模型软件工程瀑布模型瀑布模型(Waterfall Model) 是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这原创 2012-04-01 16:27:15 · 1047 阅读 · 0 评论 -
领域模型系列:概述
领域模型是对领域内的概念类或现实世界中对象的可视化表示。又称概念模型、领域对象模型、分析对象模型。它专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系。概念 业务对象模型(也叫领域模型 domain model)是描述业务用例实现的对象模型。它是对业务角色和业务实体之间应该如何联系和协作以执行业务的一种抽象。 业务对象模型从业务角色内部的观点定义了业务用例。该模原创 2012-04-28 17:33:01 · 1459 阅读 · 0 评论 -
数据校验的架构模式
转载:http://www.cnblogs.com/IT-Server/archive/2007/01/18/623679.html刘 岳林 (yuelin_liu@msn.com), 软件工程师2007 年 1 月 15 日本文阐述软件架构与设计模式,它为架构师和开发人员提供了一组关于数据校验的架构模式(隔离校验器,可组装校验器,动态策略校验器,动态注册校验器等),数据校验是转载 2012-04-17 14:25:17 · 1031 阅读 · 0 评论 -
表现层系列:Discuz!NT前台模型架构(MVC)
通过前几个月的“外围清剿”,我介绍了一些在项目中边边角角的类和项目。当然这种介绍只是前期热身准备。因为从这篇文章开始,本人将跟大家聊一聊关于这个产品架构上面的东西,以备大家对这个产品有一个总体上的认识,从而为后面的文章做一下铺垫。费话少说,开始正文吧:) 首先请大家看一下官方提供的“前台页面层次图”如下:http://nt.discuz.net/doc/Default.aspx转载 2012-04-17 13:50:08 · 527 阅读 · 0 评论 -
AOP系列:AOP在业务管理权限控制中的应用
提出问题以权限控制为例,假设一个电子商务系统,需要对订单管理用户进行权限判定,只有系统用户才能添加、修改和删除订单,那么传统的设计方法是:public class OrderManager{private ArrayList m_Orders;public OrderManager(){ m_Orders = new ArrayList();}pub原创 2012-04-24 16:02:03 · 1031 阅读 · 0 评论 -
"面向切面(AOP)"与"面向对象(OOP)"
首先你要明确的一点,AOP和OOP是两种不同的认识事物的角度,并不是说有了AOP就不要用OOP.AOP所关注的是传统OOP不能优雅解决的问题.(程序员通常都是完美主义者,当解决某个问题不优雅的时候,那就意味着不完美.)下面将就一个简单的例子来说明他们到底如何的不同. 作为一个使用OOP多年的人来说,当我听说AOP可以解决一些OOP一直都不能优雅地解决的问题时,我觉得应该去探个究竟了.转载 2012-04-24 15:28:35 · 622 阅读 · 0 评论