上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页
摘要: 经过几天的努力,我将Apworks框架和Byteart Retail案例搬迁到了著名的GitHub上,地址如下: Apworks:http://github.com/daxnet/Apworks Byteart Retail:http://github.com/daxnet/ByteartRetail 今后的更新都会在这两个portal上进行,原来在codeplex上的项目将不继续更新。 另外... 阅读全文
posted @ 2012-12-08 11:52 dax.net 阅读(3233) 评论(16) 推荐(0) 编辑
摘要: 随着几个版本的更新,Apworks框架也日趋成熟。为了能够让开发人员更加方便地使用该框架进行企业级应用程序的开发,在维护框架本身的同时,我也致力于与其配套的工具软件和Visual Studio插件的研究和开发。在Apworks的最新版本中,已经添加了分别面向NHibernate和Entity Framework的WCF服务开发项目模板,但这个模板还很不完善,扩展性也不好(比如框架本身还支持Mong... 阅读全文
posted @ 2012-11-21 11:32 dax.net 阅读(3956) 评论(14) 推荐(8) 编辑
摘要: 背景Byteart Retail是一个面向领域驱动的.NET企业级应用架构设计案例,到目前为止已经发布了三个版本。有关这三个版本的详细介绍,请参考以下几个链接:V1:《EntityFramework之领域驱动设计实践【后续篇】:基于EF 4.3.1 Code First的领域驱动设计实践案例》V2:《Byteart Retail V2 - 基于Entity Framework Code First的领域驱动设计实践案例》V3:《Byteart Retail V3 - 全新的面向.NET与领域驱动设计的企业应用实践案例》为了向读者朋友详细介绍Byteart Retail项目,我打算写一个系列专题 阅读全文
posted @ 2012-11-13 15:59 dax.net 阅读(8929) 评论(21) 推荐(14) 编辑
摘要: 经过近一个多月的努力,我使用自己的业余时间在V2的基础上对Byteart Retail案例重新打造,使得V3以一种全新的面貌出现在关注.NET企业级架构和领域驱动设计的读者朋友面前。与前两个版本相比,V3无论在界面上,还是在业务方面,甚至是技术方面都有了很大的进步。虽然系统完善了不少,但毕竟我没办法将全部时间精力都投入在这一开源项目上,所以V3肯定还存在不少缺陷,因此希望朋友们能够谅解,如果遇到问题,可以自己试着研究并动手解决,我想这样会对自己有很大的帮助。如果实在无法解决,或者有好的想法和建议,也欢迎在此留言与我联系。对Byteart Retail不太了解的朋友,可以点击下面的链接以了解前两 阅读全文
posted @ 2012-11-08 15:24 dax.net 阅读(10316) 评论(79) 推荐(34) 编辑
摘要: 本文翻译自领域驱动设计官方网站的一篇实践性论文,原文题为《IAnticorruption – A Domain-Driven Design Approach To More Robust Integration》,我觉得这篇论文写得很不错,实践性非常强,通过对一个真实项目的研究,并结合整个团队在项目实践上的经验,总结了领域驱动设计在系统集成方面的指导作用:通过防腐层的引入,改善现有的系统集成架构,... 阅读全文
posted @ 2012-08-30 09:22 dax.net 阅读(12980) 评论(13) 推荐(16) 编辑
摘要: 周末抽空简单地对Apworks框架所支持的三种仓储实现:Entity Framework、NHibernate以及MongoDB进行了性能基准测试,并对其结果进行对比。从对比的结果来看,MongoDB仓储的性能要远胜于其它两者。基准测试采用的是我在两年前开发的一个基于Visual Studio Unit Test Framework的基准测试程序(名为:Visual Benchmark),该程序可... 阅读全文
posted @ 2012-07-31 08:22 dax.net 阅读(3965) 评论(11) 推荐(11) 编辑
摘要: 概述 在企业级应用程序中,存储部分的技术选型是多样化的,开发人员可以根据应用的具体情况来选择合适的存储技术,比如关系型数据库或者文档数据库、对象数据库等。为此,Apworks也从框架级别对Repository的定制和二次开发进行支持,目前默认地提供三种Repository的实现:NHibernate Repository、Entity Framework Repository和MongoDB Re... 阅读全文
posted @ 2012-07-23 22:41 dax.net 阅读(3511) 评论(16) 推荐(5) 编辑
摘要: 今天我发布了新版本的Apworks,版本号为:2.5.4563.21309。有兴趣和有需要的朋友可以直接到Apworks官方站点下载最新的安装程序或源代码。功能更新Apworks 2.5.4563.21309包含了以下功能更新:支持Visual Studio 2010的项目模板以及相关说明书(中英文两个版本),下文会对其进行介绍将整个框架的ID类型由System.Long换成System.Guid新增WcfPerRequestLifetimeManager添加基于Entity Framework Code First的仓储实现仓储中添加了“饥饿加载”功能,用于在懒加载(Lazy Loading 阅读全文
posted @ 2012-06-30 13:00 dax.net 阅读(6072) 评论(29) 推荐(7) 编辑
摘要: 在《EntityFramework之领域驱动设计实践【后续篇】:基于EF 4.3.1 Code First的领域驱动设计实践案例》一文中,我给出了一个基于Entity Framework 4.3.1 Code First的领域驱动设计实践案例:Byteart Retail。此案例得到了广大读者朋友的关注,也有很多网友针对案例中的各种实现技术进行提问,我也基本上一一回答了大家的疑问。为了能够更好地演... 阅读全文
posted @ 2012-06-20 11:00 dax.net 阅读(12851) 评论(80) 推荐(12) 编辑
摘要: 两年前我在博客中发布了《EntityFramework之领域驱动设计实践》系列文章,也得到了广大读者朋友的关注,在完成了系列文章的总结之后,也一直没有这部分内容的更新了。现在,Entity Framework的稳定版(就是那个Stable的版本,不是Entity Framework 5的beta版本)4.3.1已经逐步应用到各种.NET项目中,为了演示Entity Framework 4.3.1 Code First编程模式以及其它的一些.NET技术在领域驱动设计实践上的应用,我重新采用经典的分层架构(也就是类似Microsoft NLayerApp的区别于CQRS的架构)实现了一个案例程序: 阅读全文
posted @ 2012-04-16 21:07 dax.net 阅读(21991) 评论(125) 推荐(28) 编辑
摘要: 在有些情况下,我们希望界面上的Action Link不仅仅是限制未授权用户的进一步访问,而是对于这些用户直接隐藏。比如,以普通用户登录时,只能在页面上看到一些常规的链接,而以管理员身份登录时,除了能看到这些常规链接外,还能够看到网站管理的链接。本文将介绍如何使用自定义的AuthorizeAttribute来实现这样的功能。为了方便介绍,在这里不打算使用那些复杂的权限管理子系统或者权限验证机制,我们就做一个非常简单的假设:如果输入的用户名是“daxnet”,则表示这个账户是一个管理员账户,否则,它就是一个普通用户账户。在实际应用过程中,读者朋友可以采用自己的一套权限验证逻辑来判断某个账户是否为管 阅读全文
posted @ 2012-03-23 10:39 dax.net 阅读(10588) 评论(19) 推荐(4) 编辑
摘要: ASP.NET MVC是一款基于ASP.NET的MVC模式的实现框架。通过使用ASP.NET MVC框架,开发人员能够非常方便地完成应用程序前台页面的开发工作。优秀的前台展示,对于大型企业级应用而言,是非常重要的组成部分,而ASP.NET MVC则为实现这一重要组成部分提供了技术和平台支持。目前,ASP.NET MVC已经到了4.0 Beta的版本,但我仍然打算以ASP.NET MVC 3为基础,通过几篇文章的篇幅,介绍一些ASP.NET MVC的实用技术,比如:如何实现自定义的认证机制、如何实现多主题效果的支持等。这些内容在网上也或多或少地提供了一些解决方案,但有些也不算太完整,有些又写的很 阅读全文
posted @ 2012-03-16 15:47 dax.net 阅读(14052) 评论(24) 推荐(28) 编辑
摘要: 在以前的Apworks框架中,Apworks的核心组件(Apworks.dll)定义了所有与仓储/仓储上下文相关的接口,而在另外的程序集中,实现了这些接口并提供了针对某个ORM框架的仓储/仓储上下文的具体实现。当然,目前我也只是开发了针对NHibernate的仓储实现,也就是那个Apworks.Repositories.NHibernate程序集。这样做的目的,就是为了使得Apworks的核心组件能够脱离具体的第三方组件而独立存在,避免由于第三方组件存在的缺陷而导致核心组件需要频繁更新。这种做法参考了Martin Fowler在其PoEAA一书中描述的Separated Interface模式 阅读全文
posted @ 2012-03-01 11:03 dax.net 阅读(2613) 评论(2) 推荐(4) 编辑
摘要: .NET 4.0中的Task Parallel Library(TPL)已经不是什么新鲜事了,相信很多朋友也阅读过不少有关TPL的书籍资料。而另一方面,能够将TPL合理地运用在实际项目开发过程中,以提高程序的执行效率,这种情况也并不多见。本文就以实际项目中的一个程序功能为例,简要讨论一下TPL的应用。在此我不打算对TPL的相关基础知识做过多讨论,这些内容在网上应该有不少的文章资料可供参考;同时读者朋友还可以阅读一些有关TPL的经典书籍,以便加深对TPL的理解。文章最后我会推荐几本不错的有关.NET 4.0下TPL的书籍资料。案例:批量对象的XML序列化在某个项目中,需要对一大批相同类型的对象进 阅读全文
posted @ 2012-02-16 18:14 dax.net 阅读(5916) 评论(11) 推荐(3) 编辑
摘要: 前文回顾:在Visual Studio 2010中创建多项目(解决方案)模板【一】:多项目解决方案模板的创建在Visual Studio 2010中创建多项目(解决方案)模板【二】:Template Wizard的使用本文主要讨论多项目(解决方案)模板的部署相关问题,包括:为多项目解决方案模板设置模板名称修改多项目解决方案模板的图标创建Visual Studio 2010扩展的安装包VSIX文件为多项目解决方案模板设置模板名称模板名称的设置非常简单,,只需要修改CMSProjectTemplate.vstemplate文件中的Name XML节点的内容即可。例如,我们可以为我们的模板起名为:C 阅读全文
posted @ 2012-01-19 14:43 dax.net 阅读(5218) 评论(7) 推荐(4) 编辑
摘要: 在上文中我给大家介绍了多项目解决方案模板的创建,在文章的最后我们遇到了一个问题,就是$safeprojectname$这个模板参数(宏)所指代的意义在各个项目中都不一样,而我们却希望它能够简单地指代用户所输入的项目名称。本文将从这个问题出发,讨论在Visual Studio 2010中是如何使用Template Wizard来设计复杂的多项目解决方案的。Template Wizard的基本应用创建Template Wizard项目在CMSProjectTemplate解决方案下,新建一个C# Class Library,取名为CMSProjectTemplateWizard,在该项目上添加Mi 阅读全文
posted @ 2012-01-18 20:17 dax.net 阅读(11470) 评论(17) 推荐(5) 编辑
摘要: 当我们使用Visual Studio来新建某个项目(Project)时,通常都会使用File –> New –> Project菜单来打开New Project(新建项目)对话框,里面列出了各种项目类型以供我们选择。大部分读者朋友都应该知道,这个对话框其实是列出了所有已经安装的项目模板,不仅如此,Visual Studio还允许用户通过File –> Export Template菜单将现有的项目导出为项目模板。平时我们最为常见的是使用Export Template来创建单一项目的项目模板,此时使用Export Template功能就十分有效。当然,社区里也有一些工具(比如微 阅读全文
posted @ 2012-01-17 19:21 dax.net 阅读(20875) 评论(27) 推荐(10) 编辑
摘要: 聚合以及聚合根是领域驱动设计中的重要概念,根据定义,聚合是针对数据变化可以考虑成一个单元的一组相关的对象。聚合使用边界将内部和外部的对象划分开来。每个聚合有一个根。这个根是一个实体,并且它是外部可以访问的唯一的对象。根可以保持对任意聚合对象的引用,并且其他的对象可以持有任意其他的对象,但一个外部对象只能持有根对象的引用。如果边界内有其他的实体,那些实体的标识符是本地化的,只在聚合内有意义(参见《领域驱动设计-精简版》第42页)。从定义上看,貌似针对特定上下文的领域模型来讲,聚合的划分与设计并不那么困难,但事实却并非如此。在本文中,我将大致总结一下自己的经验,同时也欢迎关注领域驱动设计的朋友能够 阅读全文
posted @ 2011-12-24 10:00 dax.net 阅读(12088) 评论(33) 推荐(11) 编辑
摘要: 今应博客园网友sula的邀请,参加了2011年度51CTO的IT博客大赛,如果有朋友对我的博客感兴趣的话,欢迎点击此处为我投票,我也将再接再厉,把更优秀精彩的内容展现给读者朋友。 阅读全文
posted @ 2011-11-25 10:12 dax.net 阅读(692) 评论(1) 推荐(0) 编辑
摘要: 在上文我大概介绍了一下打算实现一个《魂斗罗》的游戏,以及在实现过程中使用的自己开发的工具,文章最后给出了一个演示,可以看到我们已经可以通过键盘控制主角的各种动作了。今天继续分享这两天我的收获,这包括背景部分的使用以及通过引入一些简单的物理定理来实现跳跃的动作。我在游戏开发方面也还只是刚刚起步,或许我的这些做法和想法方向根本就是错的,不过我还是共享出来,希望得到专家的指点,同时也希望能给需要的朋友提供参考。背景背景的资源是从网上下载的,与红白机相关的游戏的资源可以在http://www.nes-snes-sprites.com/站点下载。考虑到在真正的游戏中,当主角移动到屏幕靠近中心位置时,如果 阅读全文
posted @ 2011-11-16 14:23 dax.net 阅读(2259) 评论(13) 推荐(6) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页