ddd专题提供ddd的最新资讯内容,帮你更好的了解ddd。
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.
译者注:在看这一节的内容之前,建议大家先下载module-zero这个例子代码,这个例子就是一个用户和角色的模块,并且使用的实例。配置在每一个应用中都可能会有,比如你有一个网站,你要获取网站的一些自定义基本参数,比如logo位置,网站名称,上传文件大小等等。模块化的配置方式和我们之前的做法肯定是不同的,大家要注意。之前无非就是一个方法getconfig从对应的表取数据,然后使用。 在应用启动之前,
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板。 ASP.NET Boilerplate 基于DDD的经典分层架构思想,实现了众多DDD的概念(但没有实现所有DDD的概念)。 ABP的官方网站:ht
为了减少复杂性和提高代码的可重用性,采用分层架构是一种被广泛接受的技术。 为了实现分层的体系结构,ABP遵循DDD(领域驱动设计)的原则,将分为四个层次: 展现层(Presentation):提供一个用户界面,实现用户交互操作。 应用层(Application):进行展现层与领域层之间的协调,协调业务对象来执行特定的应用程序的任务。它不包含业务逻辑。 领域层(Domain):包括业务对象和业务规则
介绍 每个应用程序需要存储一些设置并在应用程序的某个地方使用这些设置。ABP框架提供强大的基础架构,我们可以在服务端或者客户端设置,来存储/获取应用程序、 租户和用户级别的配置。 设置通常是存储在数据库(或另一个来源)中,用名称-值(name-value)字符串对应的结构来表示。我们可以把非字符串值转换成字符串值来存储。 注意:关于ISettingStore接口 为了使用设置管理必须实现 ISet
什么是依赖注入 如果你已经知道依赖注入的概念,构造函数和属性注入模式,你可以跳过这一节。 维基百科说:“依赖注入是一种软件设计模式的一个或多个依赖项注入(或服务),或通过引用传递,为依赖对象(或客户)和客户端状态的一部分。模式之间建立一个客户的依赖关系的行为,它允许程序设计是松散耦合的,依赖倒置和单一职责原则。它直接对比service locator模式,它允许客户了解他们所使用的系统找到依赖。”
简介 如果一个应用程序需要登录,则它必须知道当前用户执行了什么操作。因此ASP.NET在展示层提供了一套自己的SESSION会话对象,而ABP则提供了一个可以在任何地方 获取当前用户和租户的IAbpSession接口。 关于IAbpSession 需要获取会话信息则必须实现IAbpSession接口。虽然你可以用自己的方式去实现它(IAbpSession),但是它在module-zero项目中已经
2004年著名建模专家Eric Evans发表了他最具影响力的著名书籍:Domain-Driven Design –Tackling Complexity in the Heart of Software(中文译名:领域驱动设计 2006年3月清华出版社译本,或称 Domain Driven-Design architecture [Evans DDD])。   Martin Fowler作序说;
Server side(服务器端) ASP.NET Boilerplate使用Castle Windsor's logging facility日志记录工具,并且可以使用不同的日志类库,比如:Log4Net, NLog, Serilog... 等等。对于所有的日志类库,Castle提供了一个通用的接口来实现,我们可以很方便的处理各种特殊的日志库,而且当业务需要的时候,很容易替换日志组件。 译者注释
实体是DDD(领域驱动设计)的核心概念之一。Eric Evans是这样描述的“很多对象不是通过它们的属性定义的,而是通过一连串的连续性事件和标识定义的”(引用领域驱动设计一书)。 译者注:对象不是通过它们的属性来下根本性的定义,而应该是通过它的线性连续性和标识性定义的。。所以,实体是具有唯一标识的ID且存储在数据库中。实体通常被映射成数据库中的一个表。 实体类(Entity classes) 在A
//ssworld VS DDD 两个人有血量值 hp1 , hp2  //两人掷骰子得到每一点的概率已知 //ssword赢的概率 //dp[i][j]  表示有第一个人血量为i,第二个人的血量为j第一个人赢的概率 //第一个人赢,第二个人赢 , 平局的概率为p1 , p2 , p3 //那么有dp[i][j] = p2*dp[i-1][j] + p1*dp[i][j-1] + p3*dp[i]
仓储定义:“在领域层和数据映射层的中介,使用类似集合的接口来存取领域对象”(Martin Fowler)。 实际上,仓储被用于领域对象在数据库上的操作(实体Entity和值对象Value types)。一般来说,我们针对不同的实体(或聚合根Aggregate Root)会创建相对应的仓储。 IRepository接口 在ABP中,仓储类要实现IRepository接口。最好的方式是针对不同仓储对象
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 应用服务用于将领域(业务)逻辑暴露给展现层。展现层通过传入DTO(数据传输对象)参数来调用应用服务,而应
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 通用连接和事务管理方法 连接和事务管理是使用数据库的应用程序最重要的概念之一。当你开启一个数据库连接,什
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 介绍 在数据库开发中,我们一般会运用软删除(soft-delete)模式,即不直 接从数据库删除数据,而
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 在C#中,一个类可以定义其专属的事件并且其它类可以注册该事 件并监听,当事件被触发时可以获得事件通知。这
基于DDD的现代ASP.NET开发框架--ABP系列之15、ABP应用层——应用服务(Application services) ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspne
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 数据传输对象(Data Transfer Objects)用于应用层和展现层的数据传输。 展现层传入数据
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 应用程序的输入数据首先应该被检验是否有效。输入的数据能被用户或其他应用程序提交。在Web应用中,通常进行
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP的官方网站:http://www.aspnetboilerplate.com ABP在Github上的开源项目:https://github.com/aspnetboilerplate 维基百科定义:审计跟踪(也称为审核日志)是一个安全相关的时间顺序记录,记录这些记录的目的是为已经影响在任