走向.NET架构设计—第四章—业务层分层架构(前篇)
本篇议题如下:Transaction Scrip(前篇)Active Record前篇)Domain Model(中篇)Anemic Model(中篇)DDD(后篇)
{
public static bool BookHolidayFor(int employeeId, DateTime From, DateTime To)
{
bool booked = false;
TimeSpan numberOfDaysRequestedForHoliday = To - From;
if (numberOfDaysRequestedForHoliday.Days > 0)
{
if (RequestHolidayDoesNotClashWithExistingHoliday(employeeId, From, To))
{
int holidayAvailable = GetHolidayRemainingFor(employeeId);
if (holidayAvailable >= numberOfDaysRequestedForHoliday.Days)
{
SubmitHolidayBookingFor(employeeId, From, To);
booked = true;
}
}
}
return booked;
}
private static int GetHolidayRemainingFor(int employeeId)
{
// ...
}
public static List<EmployeeDTO> GetAllEmployeesOnLeaveBetween(
DateTime From, DateTime To)
{
// ...
}
public static List<EmployeeDTO> GetAllEmployeesWithHolidayRemaining()
{
// ...
}
}
public class Comment : ActiveRecordBase<Comment>
{
[PrimaryKey]
public int Id { get; set; }
[BelongsTo("ArticleID")]
public Article Post { get; set; }
[Property]
public string Subject { get; set; }
[Property]
public string Content { get; set; }
[Property]
public DateTime CreatedDate { get; set; }
[Property]
public string CreatedBy { get; set; }
[Property]
public DateTime UpdatedDate { get; set; }
}
转载于:https://blog.51cto.com/yanyangtian/413312
走向.NET架构设计—第四章—业务层分层架构(前篇)相关推荐
- 走向.NET架构设计—第四章—业务层分层架构(后篇)
走向.NET架构设计-第四章-业务层分层架构(后篇) 前言: 在上一篇文章中,我们讨论了组织业务逻辑的模式:Transaction Script和Active Record,Domain Model. ...
- 走向.NET架构设计—第四章—业务层分层架构(中篇)
走向.NET架构设计-第四章-业务层分层架构(中篇) 前言: 在上一篇文章中,我们讨论了两种组织业务逻辑的模式:Transaction Script和Active Record.在本篇中开始讲述Dom ...
- 走向.NET架构设计—第五章—业务层模式,原则,实践(中篇)
走向.NET架构设计-第五章-业务层模式,原则,实践(中篇) 前言:设计模式并不是什么很高深的东西,至少不是那么"神乎其神".说到底,设计模式就是一些设计思想.下面我们就走进项目, ...
- 走向.NET架构设计—第五章—业务层模式,原则,实践(后篇)
走向.NET架构设计-第五章-业务层模式,原则,实践(后篇) 前言:在上一篇文章中,讲述了一些设计模式的使用,本篇首先接着介绍还没有讲完的一些设计模式,然后再讲述一些架构模式中的超类模式,作为本篇的结 ...
- 走向ASP.NET架构设计-第六章-服务层设计(中篇)
走向ASP.NET架构设计-第六章-服务层设计(中篇) 前言:上一篇文章介绍了一些服务层的基本知识,而且也简要的介绍了SOA的有关知识,本篇主要是介绍在服务层可以采用的一些模式. 本篇议题如下: F ...
- 走向.NET架构设计—第三章—分层设计,初涉架构(后篇)
走向.NET架构设计-第三章-分层设计,初涉架构(后篇) 前言:本篇主要是接着前两篇文章继续讲述! 本篇的议题如下: 4. 数据访问层设计 5. 显示层设计 6. UI层设计 4. 数据访问层设 ...
- 微服务架构设计实践之七:业务架构
微服务架构设计实践之七:业务架构 原文:微服务架构设计实践之七:业务架构 版权声明: https://blog.csdn.net/beyondself_77/article/details/79842 ...
- 超标量处理器设计——第四章_分支预测
超标量处理器设计--第四章_分支预测 参考<超标量处理器>姚永斌著 4.1 简述 分支预测主要与预测两个内容, 一个是分支方向, 还有一个是跳转的目标地址 首先需要识别出取出的指令是否是分 ...
- DDD微服务架构设计第四课 微服务落地实践的技术中台
10 微服务落地的技术实践 如今,做一个优秀的程序员越来越难.激烈的市场竞争.互联网快速的迭代.软件系统规模化发展,无疑都大大增加了软件设计的难度.因此,对于架构师的能力要求也越来越高,就像我的一本书 ...
最新文章
- 有关Nodejs的一些插件介绍
- eclipse怎么创建web项目html,eclipse入门之创建第一个web程序(jsp测试环境)
- [C++STL]map容器用法介绍
- java 扫描类_Java扫描指定包中所有类
- HTTP与HTTP协议
- python gui 框架中显示gif_使用QLab在PyQt GUI中显示gif
- 编辑器输入中文怎么整_微软证实:Windows 10五月更新中输入法有问题
- 微信小程序源代码基本文件类型
- Python中的注释和文档
- win10连Android机,Windows10电脑可以和安卓手机无缝连接使用了,实用性干翻Mac-win10手机...
- mysql怎么卸载干净?
- oracle数据库alter table,oracle 数据库 alter table的用法(经典)
- JS addEventListener()方法
- html根据PC手机设置不同背景图,Html-根据不同的分辨率设置不同的背景图片
- c语言烟花发射原理,烟花发射原理
- python 键盘钩子_WPF 利用键盘钩子来捕获键盘,做一些不为人知的事情...完整实例...
- 项目开发总结报告 模板
- 求圆的面积(╭(╯^╰)╮)
- 操作系统——Threads 线程
- caffe2 caffe_Caffe2-简介