摘要:
Apache Thrift和ProtoBuf一样,都是为优化序列化而生,Thrift是一个通信框架,最初有FaceBook开发,后交由Apache管理,目前Facebook也在使用。Thrift与ProtoBuf同样是跨平台多语言的,不过Thrift几乎支持现下的所有流行的语言,而ProtoBuf.net是.net的移植,相比而来Thrift支持更广。我这里做的是对Thrift序列化数据在效率做实... 阅读全文
摘要:
什么是ProtoBuf-net Protobuf是google开源的一个项目,用户数据序列化反序列化,google声称google的数据通信都是用该序列化方法。它比xml格式要少的多,甚至比二进制数据格式也小的多。 Protobuf格式协议和xml一样具有平台独立性,可以在不同平台间通信,通信所需资源很少,并可以扩展,可以旧的协议上添加新数据 Protobuf是在java和c++运行的,Pr... 阅读全文
摘要:
操作系统版本Unbutu13.10 root密码默认未设置 使用 sudo passwd root 设置root密码 1.安装jdk apt-get install openjdk-7-jre-headless2. 安装ssh服务ssh服务用户远程登录管理,具体是个傻东西我也不清楚~,这一步要有网络,要下载一堆东西sudo apt-get install ssh openssh-server3. ... 阅读全文
摘要:
最近看项目中的老代码,一外函数动辄7、8百行,一个if,else,for语句见到开头,找不到结尾,而VS中默认不可对if,for这样的语句折叠,很是苦恼,好在在微软的网站上找到了一个插件来解决此问题,代码也是开源的,要学习VS IDE开发的同学可以研究下 下载地址:https://skydrive.live.com/?cid=6d06598054278d8d&id=6D06598054278D8... 阅读全文
摘要:
Microsoft Ajax Minifier是做什么,我就不多说了。Microsoft Ajax Minifier的使用方法很多,命令行、代码实现、附件到VS的Bulid事件等。在安装msi文件后使用很方便。但发布系统中往往不能因为开发人员的需求而安装各种组件,所以要在发布系统不安装msi文件的情 阅读全文
摘要:
不觉已经写了七年多的代码,但这七年来自己爱写的代码确寥寥无几,许多时间都是在厌倦与烦躁中写代码为了完成工作。而我自认为我是个爱写代码的程序员,但现实中太多的代码与我的意愿相差甚远,最近的工作遇到太多东西想要吐槽。 现在维护的Solution中有300多个project,一个站点在公司这台4G的Celeron机上编译一次就需要30~40分钟,等页面打开双需要10分钟左右,一天的工作基本上是... 阅读全文
摘要:
拦截注入--AOP的核心话题。AOP--Aspect Oriented Programming面向方面编程。对我来说这一直是个神密存在,它如何将毫无关联的类关联起来加上统一的行为?看看Unity框架是如何实现的。 Unity拦截注入可以在运行时有效捕获对象方法调用,并给对象附加上额外的功能。很适用于改变某单个实例的行为,而不是整个类的行为,这如同装饰模式。装饰模式是什么? nam... 阅读全文
摘要:
一、构造注入 Constructors injection 构造注入适用于对象强依赖的情况,需要在构造函数中实例化别外一个类型,以控制对象的实例化顺序。已经存在的实例是不能使用构造注入,即不能使用构造注入改变实例属性。 以下情况适合使用构造注入 在实例化父对象时自动实例化子对象 想用一个简单的方法表示代码是类的依赖关系 父对象有能在太多的构造函数 父对象的构造函... 阅读全文
摘要:
Unity是一个轻量级AOP框架,提供构造注入、拦截注入、属性注入、方法注入,使用起来很方便 一、简单实例注入 先看一个应用场景。一个应用程序中我想定义一个窗口,做为用户UI,窗口有高度和宽度两种属性 namespace ConsoleUnityDemo { public class MyWindow { public int Height { ... 阅读全文
摘要:
最近装上了VS11,发现VS11 RC中找不到宏管理器了,之前用宏命令写的CodeReview插件也没有办法使用了。索性写下Add-In版本的新建VS外接程序项目,之后向导中的选项都可以不选 完成之后编辑Connect.cs文件using System;using Extensibility;using EnvDTE;using EnvDTE80;using Microsoft.VisualStu... 阅读全文
摘要:
今天搞WorkFlow时发现WorkFlow Designer无法打开了,给出以下错误 工作流设计器在你的文档中遇到了问题 堆栈信息System.Windows.Markup.XamlParseException: 设置 connectionId 时引发了异常。 ---> System.InvalidCastException: 无法将类型为“System.Windows.Input.Comma... 阅读全文
摘要:
每次搞这东西总要花不少时间来配置,这次记下,方便以后搬 一.添加程序程集Assembly 在使用log4Net类的namespace前加上: [assembly: log4net.C... 阅读全文
摘要:
Install.bat @ECHO OFF REM The following directory is for .NET 2.0 set DOTNETFX2=%SystemRoot%\Microsoft.NET\Framework\v2.0.50727 set PATH=%PATH%;%DOTNETFX2% echo Installing WindowsService... echo --------------------------------------------------- start InstallUtil /i ... 阅读全文
摘要:
Managed Extensibility Framework (后称MEF) 是.net 4.0中新增的一个功能特性. 是一个可以自动扩展的轻型框架.以下是MSDN的原版翻译. 假设您... 阅读全文
摘要:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using DtsManage = Microsoft.SqlServer.Dts.Runtime;namespace TN.SynthEmployee{ class Program { static v... 阅读全文