开源项目
moon66sun
精于企业业务流程管理,流程咨询、项目实施、软件开发
展开
-
开源.NET 企业应用系统--SplendidCRM
SugarCRM是SourceForge.net上最成功的开放源代码CRM系统。SugarCRM 具有很强的可操作性、灵活的适用性、完善的功能、独特的个性化设计和专业的技术安全保障,是辅助企业实现客户关系管理的理想之选。最主要的是,SugarCRM不仅仅是一种应用类软件,更是先进的销售管理解决方案,专业的销售培训使你的销售效果倍增,确实提高您的业务水平。它在企业管理人员、销售人员和客原创 2022-02-10 15:39:55 · 229 阅读 · 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 系列:一个个人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 评论 -
表现层系列: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 评论 -
ORM 系列:概述
概念 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系原创 2012-04-18 11:09:01 · 581 阅读 · 0 评论 -
领域模型系列:贫血、充血模型(非常经典)
为了补大家的遗憾,在此总结下ROBBIN的领域模型的一些观点和大家的补充,在网站和演讲中,robbin将领域模型初步分为4大类:1,失血模型2,贫血模型3,充血模型4,胀血模型那么让我们看看究竟有这些领域模型的具体内容,以及他们的优缺点: 一、失血模型 失血模型简单来说,就是domain object只有属性的getter/setter方法的纯数据类,所有的转载 2012-04-28 17:34:23 · 1680 阅读 · 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 · 1030 阅读 · 0 评论 -
IBastis.Net 系列:概述
http://developer.51cto.com/art/200907/137903.htm转载 2012-04-19 11:53:55 · 408 阅读 · 0 评论 -
AOP系列:.NET中AOP的几种实现方案
AOP在.NET中的应用,个人也属于学习阶段,欢迎大家拍砖!本文的例子模拟用户注册的场景,主要通过代码演示几种方案的实现方式。静态代理通过代理模式实现静态代理,大家一看代码基本就明白了。用户注册接口和实现public interface IUserProcessor { void RegUser(User user); } p转载 2012-04-24 11:45:18 · 627 阅读 · 0 评论 -
ComponentArt 控件集:概述
ComponentArt Web.UI for ASP.NET建立于ComponentArt的客户端输出技术之上,提供快速、轻量级的和功能丰富的用户界面。这套组件支持广泛的AJAX技术,包括新的客户端与web services绑定。所有ComponentArt Web.UI组件基于客户端组件模型,引入ASP.NET AJAX,提供的JavaScript APIs允许完全的客户端编程控制用户界面的任原创 2012-04-19 18:08:18 · 1280 阅读 · 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 Web 新增 编辑时 多字段取值 解决方案
ASP.NET 开发人员在卡发时经常会碰到一个情况,就是新增的页面中字段太多,在点击保存的时候需要一个一个的赋值实体或者构建SQL语句去保存。这样不仅浪费体力还需要占用大量的文本行控件去写代码。经过构思是否可以使用一种更方便的办法去解决呢?提高代码的内聚性。 1.思路 我们知道一般新增页面最多的就是一大堆文本框让用户输入内容,然后点击保存按钮进行提交将数据持久化到数据转载 2012-04-10 15:18:49 · 445 阅读 · 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 评论 -
开源系列:国外开源软件网站
sourceforge[url]http://www.[/url]sourceforge.netjava.net[url]http://www.java.net[/url][url]www.eclipse.org[/url][url]www.opensource.org[/url]Lomboz [url]http://www.objectlearn.com/index.原创 2012-05-10 16:25:23 · 796 阅读 · 0 评论 -
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系列:AspectSharp学习
AspectSharp项目地址:AspectSharp - .NET AOP Framework这个项目从05年开始已经没有维护了,估计现在已经没落,现在AOP用的比较多的应该是PostSharp,PostSharp使用上应该非常方便,但前段时间已经商业化运作了,仍提供社区版,但功能上有一些限制AspectSharp现在网上较完整的例子比较少,从sourceforge下载项目源代码,里转载 2012-04-24 11:56:14 · 1550 阅读 · 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 评论 -
C# 基础知识:virtual,new和override的区别
A类 有方法 public virtual void test()B类继承自A类,有方法 public new void test()或者B类继承自A类,有方法 public override说void test()如果你用override,则无论调用的是A类还是B类中的test(),系统都会找到它实质类的test();如果是用的New,则可以通过类型转换调用到基类的test(转载 2012-04-25 10:46:00 · 968 阅读 · 0 评论 -
"面向切面(AOP)"与"面向对象(OOP)"
首先你要明确的一点,AOP和OOP是两种不同的认识事物的角度,并不是说有了AOP就不要用OOP.AOP所关注的是传统OOP不能优雅解决的问题.(程序员通常都是完美主义者,当解决某个问题不优雅的时候,那就意味着不完美.)下面将就一个简单的例子来说明他们到底如何的不同. 作为一个使用OOP多年的人来说,当我听说AOP可以解决一些OOP一直都不能优雅地解决的问题时,我觉得应该去探个究竟了.转载 2012-04-24 15:28:35 · 622 阅读 · 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(http://rapidwebdev.codeplex.com/)是一个完全开源的企业应用快速开发框架,它致力于是通过整合和创新对生产率和质量进行提高。现阶段,它整合了开发中需要用到的大多数常用的组件,服务,API以及UI框架。实践证明,它可以让项目节省超过50%的代码,并且代码质量和开发效率比其他的解决方案都要高出很多。 RapidWebDev源于2004年至今我们近十个转载 2012-03-27 14:40:04 · 454 阅读 · 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 评论 -
开源框架系列:.NET Enterprise CMS Framework --- RapidWebDev
RapidWebDev开源框架是什么?RapidWebDev开发框架是一个完全开源的企业应用快速开发框架,它提供了在.Net中经常会用到的组件和服务,包括常用组件、业务平台、扩展模型和快速Web四个部分。未来会添加文件管理、社区和搜索/索引组件。常用组件:一些常用的组建和可服用的API集合,它包括了公共方法、异常处理、缓存、验证、全球化/本地化、动态类生成器、Data Context工厂、转载 2012-03-27 10:25:33 · 671 阅读 · 0 评论 -
类库设计系列:类库的基本架构
一个类库(*dll)首先要实现某一功能这是其存在的价值,其次要易用行、广泛的适用性、高效。易用性要求其:设计给客户的接口要灵活 ,简单。适用性要求其:可以通过配置来初始 器的环境。原创 2012-03-02 12:09:27 · 693 阅读 · 0 评论 -
开源项目的各种协议简单介绍
很多企业在进行开发的时候,或多或少都会使用到开源项目。这时候就要考虑到开源项目所执行的协议了。 1. 允许商用、闭源发布的协议:BSD 、Apache 、 MIT 协议 、 LGPL(更宽松的GPL) 1.1 BSD 协议 BSD开源协议是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。当你发布使转载 2012-03-01 16:13:53 · 1561 阅读 · 0 评论 -
.net框架 Castle
Castle是针对.NET平台下的一个非常优秀的开源项目,从数据访问框架 ORM到依赖注入容器,再到WEB层的MVC框架、AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提供了很好的服务。Castle ActiveRecord (DAL O/R)是Castle 中提供的数据访问框架,他的底层封装了NHibernate 的操作,使用特性来代替映射文件,他提供的原创 2012-02-21 16:54:12 · 774 阅读 · 0 评论 -
常用安装向导制作软件
l InstallShield X Express Edition v10.0.SP2 正式版InstallShield X对于任何平台,操作系统都是全面一体化的安装制作解决方案,Device InstallShield X能够让开发者很容易地制作WINDOWS安装程序(MSI),InstallScript(安装程序的脚本语言)或交叉平台型安装程序,并扩展至数据服务器,WEB服务器,和移动驱动原创 2011-12-08 18:03:21 · 1947 阅读 · 0 评论 -
SQL Server 2005报表服务入门
一、创建并部署基本报表 在开发程序中,报表总是一件繁琐工作。其实报表就是格式化数据输出,真正需要编程的地方很少。而且报表工具也比较繁琐,要编写一个漂亮的报表,需要深入了解报表工具。SQL Server 2005报表服务(SSRS 2005)简单易用。SSRS 2005是SQL Server 2005的一个组件。购买SQL Server时就内置在其中了。它可以转载 2012-03-28 17:05:46 · 1650 阅读 · 1 评论 -
log4net 框架系列:Log4net源码分析 日志输出机制
Log4net简介 Log4net是基于.net开发的一款非常著名的记录日志开源组件。最早是2001年7月由NeoWorks Limited启动的项目,基本的框架源于另外的一个非常著名的姐妹组件-log4j。现由Apache组织开发与维护。此日志架构是可灵活扩展,且通过配置文件来设置日志的属性及输出,不同修改代码即可实现程序的灵活跟踪。可以将日志分不同的等级,通过不同原创 2012-03-29 10:58:49 · 1135 阅读 · 0 评论 -
Castle 系列:Castle DynamicProxy动态生成透明代理类型详解
Castle DynamicProxy动态生成透明代理类型,实体不需要继承MarshalByRef、ContextBoundObject便可以实现代理类基于透明代理的功能,可以实现对方法调用的拦截处理,例如NHibernate用它实现延迟加载DP的使用非常简单,内部没有使用反射,而是采用Emit、委托等方式生成代理类型,调用真实类的方法,性能方面也没有太多损失基本示例引用的转载 2012-04-24 14:30:20 · 2322 阅读 · 0 评论 -
设计模式系列:观察者模式(Observer Pattern)
概述 在软件构建过程中,我们需要为某些对象建立一种“通知依赖关系” ——一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者对象)都将得到通知。如果这样的依赖关系过于紧密,将使软件不能很好地抵御变化。使用面向对象技术,可以将这种依赖关系弱化,并形成一种稳定的依赖关系。从而实现软件体系结构的松耦合。 意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依转载 2012-04-10 15:05:08 · 343 阅读 · 0 评论 -
软件架构设计方法学:敏捷思维
跟微软学敏捷开发以人为核心的敏捷开发模式,强调团队成员之间以及开发团队与客户之间的充分沟通,微软正在身体力行地实践这种新的开发模式。 微软大中华区开发工具及平台事业部总经理谢恩伟主导了敏捷开发模式的导入自2001年17位软件开发领域的领军人物聚集在美国犹他州的滑雪胜地雪鸟雪场共同发布《敏捷宣言》开始,敏捷开发作为一种全新的软件开发管理模式和价值观开始在众多软件开发人员和团队中推广。原创 2012-04-01 16:42:46 · 550 阅读 · 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 评论 -
Log4net 框架系列:log4net日志文件在asp.net中的应用实例-记录系统错误
1. log4net简介log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。Java平台下,它还有一个姐妹组件——log4j。log4net的下载地址:http://logging.apache.org/log4net/download.html2. log4net的组成log4n转载 2012-04-01 17:44:37 · 1066 阅读 · 0 评论 -
开发人员应该下载的十种必备工具
发布日期: 7/20/2004 | 更新日期: 7/20/2004本文自发布以来已经增加了新信息。请参阅下面的编辑更新。本文讨论:•用于编写单元测试的 NUnit•用于创建代码文档资料的 NDoc•用于生成解决方案的 NAnt•用于生成代码的 CodeSmith•转载 2012-03-31 09:54:36 · 599 阅读 · 0 评论 -
log4net 框架系列:类型转换分析
log4net 框架 类型转换源码分析:源码唯一Util 文件夹下 TypeConverters 、PatternStringConverters 文件夹下,相关类图:原创 2012-03-29 17:41:53 · 317 阅读 · 0 评论 -
VS2005的安装与部署(WEB应用程序
网站完成后,需要部署到目标机器上,方法有很多,直接把文件Copy到目标机器上,执行SQL脚本,配置IIS,这样可以做到;也可以使用InstallShield这样到专业制作软件来打包。本篇文章是使用VS2005自带到安装部署工具来制作exe安装文件。 涉及到到内容包括:使用安装部署工具,建立数据库,配置IIS,文件操作,注册表等。参考了网上关于使用VS制作安装程序的文章。环境:Windows原创 2010-06-25 14:21:00 · 623 阅读 · 0 评论