2016年12月11日

Web API 源码剖析之默认配置(HttpConfiguration)

摘要: 我们在上一节讲述了全局配置和初始化。本节我们将就全局配置的Configuration只读属性进行展开,她是一个类型为HttpConfiguration。 它在Web Api 主要为整个API 做一些最基础的工作,比如定义默认 路由表(Routes) 过滤器(Filters) 默认消息处理程序(MessageHandlers) 属性字典(Properties) ... 阅读全文

posted @ 2016-12-11 22:15 DripRoad 阅读(2119) 评论(0) 推荐(0) 编辑

Web API 源码剖析之默认消息处理程序链--》路由分发器(HttpRoutingDispatcher)

摘要: 我们在上一节讲述了默认的DefaultServer(是一个类型为HttpServer的只读属性,详情请参考 Web API 源码剖析之全局配置)。本节将讲述DefaultHandler(是一个HttpMessageHandler的只读属性)。在Web API 里默认是的一个HttpRoutingDispatcher类型,它继承于HttpMessageHandler。我们称之为路由分发器。它主要作用... 阅读全文

posted @ 2016-12-11 21:29 DripRoad 阅读(676) 评论(0) 推荐(0) 编辑

2016年11月22日

Web API源码剖析之HttpServer

摘要: 上一节我们讲述全局配置。本节将讲述全局配置的DefaultServer,它是一个HttpServer类型。 主要作用就是接受每一次请求,然后分发给消息处理程序链依次处理。从HttpServer定义可以看出,其本质是一个消息处理程序,其继承于DelegatingHandler。从其代码定义如下: //参数为 public HttpServer(HttpConfigu... 阅读全文

posted @ 2016-11-22 22:47 DripRoad 阅读(1086) 评论(0) 推荐(0) 编辑

2016年11月21日

Web API 源码剖析之全局配置

摘要: Web API 均指Asp.net Web API 。本节讲述的是基于Web API 系统在寄宿于IIS. 本节主要讲述Web API全局配置。它是如何优雅的实现这个配置。做过MVC 都知道Global文件来初始化。Web API 本质上也是ASP.NET applications。所以也是在Global定义里一个GlobalConfiguration静态类。该类作用就是初始化ASP.NET ... 阅读全文

posted @ 2016-11-21 22:29 DripRoad 阅读(1020) 评论(0) 推荐(0) 编辑

2016年7月16日

使用模板创建第一个Web API项目

摘要: 软件环境 vs 2015 update3 本节将通过例子讲述创建Web API 项目的方法 第一步,打开vs ,依次通过【文件】菜单,【新建】【项目】命令,大致步骤如下图 : 第2步,在弹出对话框中,选择左边C#模板下的Web ,然后选择第一个基于传统Framework4.5.2 第一个选择 ,大致如下图: 第3步,基于上一步确定后,选择 webAPI ... 阅读全文

posted @ 2016-07-16 23:03 DripRoad 阅读(2404) 评论(0) 推荐(0) 编辑

2016年6月18日

AOP(面向切面编程,翻译自MSDN)

摘要: 目录 AOP的概念 静态实现AOP .Net 框架实现AOP(动态代理实现AOP) 动态代理AOP实现方法过滤 AOP参考 本文翻译自 :https://msdn.microsoft.com/en-us/magazine/dn574804.aspx(面向切面编程) 阅读全文

posted @ 2016-06-18 19:44 DripRoad 阅读(326) 评论(0) 推荐(0) 编辑

动态代理AOP实现方法过滤

摘要: 上一节实现了动态代理,接下来 有时候,我不需要在每一个方法都要记录日志,做权限验证 等等。 所有就有了这样的需求。AOP实现特定方法过滤,有选择性的来对方法实现AOP 拦截。就是本节标题所示。 举个例子,对于查询的方法我不需要记录日志,所以,我就找到如果以“Get”开头的方法,就不记录日志,否则就记录日志;所以基于这样一个需求,代码如下: public override IMessage... 阅读全文

posted @ 2016-06-18 19:43 DripRoad 阅读(2120) 评论(0) 推荐(0) 编辑

.Net 框架实现AOP(动态代理实现AOP,本文为翻译)

摘要: 在上一节,我们将静态实现AOP,但是对于一个大型项目,要想为每个类,每个方法都去实现AOP ,进行日志记录和权限验证似乎是不可能的。 即使可能对于成百上千个类维护,也是很难维护。所以今天的主题就是如标题所述。 (Real Proxy)真正代理和(Dynamic Proxy)动态代理 Real Proxy 类是个抽象类,定义在 System.Runtime.Remoting.Proxie... 阅读全文

posted @ 2016-06-18 18:57 DripRoad 阅读(1028) 评论(0) 推荐(0) 编辑

静态实现AOP(翻译自MSDN)

摘要: 在.net实现AOP 本文通过一个简单的例子实现静态AOP.改例子主要实现客户的增删改查,突然有一天你的老板需要在程序上跟踪每个方法操作的运行日志。 主要分为5个步骤。 第一步:创建接口IRepository,代码定义如下: public interface IRepository { void Add(T entit... 阅读全文

posted @ 2016-06-18 18:36 DripRoad 阅读(483) 评论(0) 推荐(0) 编辑

AOP(面向切面编程概念,本文为翻译)

摘要: AOP是什么 AOP为Aspect Oriented Programming的缩写。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 详情请自行百度或者Google: AOP In .Net 的应... 阅读全文

posted @ 2016-06-18 18:21 DripRoad 阅读(1701) 评论(0) 推荐(0) 编辑

导航