随笔分类 - 【0055】.Net进阶
摘要:序言 实际应用中,除了使用Emit来提升反射的执行效率外,还可以用它来实现动态代理或者应用到AOP编程技术中,可谓不得不掌握的C#高级编程技术。 资料
阅读全文
摘要:序言 广义的面向切面编程,有静态编织和动态代理两种形式,它们都可以在某个方法执行前后插入某种处理逻辑。不同的地方在于,前者发生在编译时期间,后者发生在运行时期间。 对于 .NET 而言,最常见的静态编织方案是 PostSharp 和 Mono.Cecil,两者的区别是:一个付费、一个免费。 本文介绍
阅读全文
摘要:序言 net.pipe://localhost WCF服务的双工模式 .NET框架被设计为禁止内存共享的, 但是好在FCL依然提供了一些类, 使得我们还是可以使用管道技术. IPC 进程通信 WCF中有很多种绑定,根据官方的说法,NetNamedPipeBinding是适用于同一台主机中不同进程之间
阅读全文
摘要:序言 Autofac Autofac.dll Autofac.Extras.CommonServiceLocator.dll Autofac.Integration.Mvc.dll Autofac.Integration.WebApi.dll Castle.Core.dll 项目中添加autofac
阅读全文
摘要:序言 ILGenerator 3种使用方式 ConstructorBuilder.GetILGenerator方法 DynamicMethod.GetILGenerator 方法 MethodBuilder.GetILGenerator 方法 通过emit创建动态代理,实现实体的创建 Reflect
阅读全文
摘要:序言 IIS 应用程序池中有一项为“快速故障防护”,默认值为已开启,个人建议改为 False。 如上图,红色为 True 时,它的意思是,在一定时间内,如果崩溃了 N 次,就干脆把整个进程都关了,此时 Service Unavailable。 崩溃了 N 次,为什么就要关掉呢,关掉了,永远不会自动重
阅读全文
摘要:序言 通过代码实现反编译 反射存在的意义 反射是什么呢?反射是动态获取程序集的元数据(metadata)的一种技术。反射是.NetFramework类库提供的帮助类,动态加载dll实现程序的可配置可扩展。 个人认为反射最突出的优点或存在的合理性:在不修改程序原码的情况下,实现程序功能的动态调整(Ru
阅读全文