Fork me on GitHub

2012年8月8日

摘要: 2012年4月9日发布了Quartz.NET 2.0 Releasedhttp://quartznet.sourceforge.net/, 对应于Java Quartz的2.1版本,下载地址http://quartznet.sourceforge.net/download.html,也可以通过Nuget包进行安装。Install-Package Quartz整个版本相对于1.0版本进行了大量的修改,单元测试的代码更友好(重构了更多的接口),API是基于泛型和.NET 3.5 SP1之后的特性,例如DateTimeOffset。这是Quartz.NET 有史以来最大的、最值得兴奋的一个版本。懒惰 阅读全文
posted @ 2012-08-08 11:06 HackerVirus 阅读(163) 评论(0) 推荐(0)
摘要: http://www.mulesoft.org/1. 简介Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换。Mule ESB支持集成现有系统而无论其底层采用何种技术,如JMS、Web Services、JDBC、HTTP以及其他技术。2. 整体结构图 整体结构从上图可见,Mule通过Transports/Connectors与外围的异构系统连接,提供Routing(路由)、Transaction Management(事务管理)、Transformation(转换)、Message Broker(消息代理)、Trans 阅读全文
posted @ 2012-08-08 10:04 HackerVirus 阅读(374) 评论(0) 推荐(0)
摘要: 某年某月某一天,我在WLW上写了半篇没CTRL+S的博文 深研《TCP/IP详解卷1》——链路层,突然间室友做饭搞个功率很大的电磁锅弄的跳闸了,停电了!于是一段很长的篇幅就这样被这无情的断电给抹杀了。。能做的只有:从头再来!TCP/IP协议的分层封装实现使得每一层看起来像是完全独立特行的,以至于我们可以认为不同主机间每一层的数据传递直接是两个同层的传递,这意味着我们可以完全忽视所有中间过程而把注意力集中在我们关注的层次;比如两个不同主机间链路层的帧传递我们仅需要关注这一层即可,以至于底下的物理层线路怎么去传递的,可以完全不用关心。对于链路层而言,其主要作用有三点:(1)接收和发送IP层传来的数 阅读全文
posted @ 2012-08-08 09:27 HackerVirus 阅读(220) 评论(0) 推荐(0)
摘要: 通过《实例篇》的实演示可以看出我们通过扩展实现的自动异常处理机制能够利用EntLib的EHAB根据执行的一场处理策略对某个Action方法执行过程中抛出的异常进行处理。对于处理后的结果,则按照如下的机制对请求进行响应。[源代码从这里下载][本文已经同步到《How ASP.NET MVC Works?》中]对于Ajax请求,直接创建一个用于封装被处理后异常的数据对象,并据此创建一个JsonResult将异常信息回复给客户端。对于非Ajax请求,如果当前Action方法上应用HandleErrorActionAttribute特性设置了匹配的Action方法用于处理该方法抛出的异常,那么执行该方法 阅读全文
posted @ 2012-08-08 09:26 HackerVirus 阅读(150) 评论(0) 推荐(0)

2012年8月7日

摘要: 平时我们创建Zip文件的时候,要么用现成的软件,要么用第三方的开源库。其实用.net自带的类操作起来也非常方便。以下用一个例子来展示:创建一个文件夹,里面可以包含任意的子目录。创建一个控制台项目,添加一个类ZipManager,用来实现我们想要的操作。为项目添加WindowsBase引用。(这个名字不太友好,但是与压缩相关的类就藏在里面)在ZipManager.cs中添加对System.IO.Packaging命名空间的引用。写一个构造函数,用来接收要执行压缩的文件路径。创建一个方法ZipFolder,用来执行实际的压缩操作。在这个方法里面创建一个Package的实例。创建一个函数ZipDir 阅读全文
posted @ 2012-08-07 20:44 HackerVirus 阅读(262) 评论(0) 推荐(1)
摘要: 在上一节中我们总结了关于权限控制的方式,我们这一节讲解关于权限控制中角色权限的授予处理等等并做本系列的总结.首先,我们来谈谈权限控制中角色权限的控制,上一节只是针对权限拦截中比较粗的控制,如果我们需要对每一个动作做细致的权限认证,我们仍然进一步设计权限处理.比如:我们分配给一个角色只有浏览日志的权限,不允许他进行其他动作,针对这种细的粒度,我们就必须专门进行处理,就是关于角色动作验证的处理当然,我们的数据库设计就必须就需要进一步改进.这是我们的EF关系图:主要看看关于tbModule,tbPermission部分,都是采用树形设计,为什么这样设计呢?首先,我们必须要承认,Module也就是模块 阅读全文
posted @ 2012-08-07 18:32 HackerVirus 阅读(2477) 评论(4) 推荐(0)
摘要: =============C#.Net篇目录==============T4文本模板,即一种自定义规则的代码生成器。根据业务模型可生成任何形式的文本文件或供程序调用的字符串。(更多基础知识请参见《你必须懂的T4模板:深入浅出》)文本模板运行在Visual Studio本身提供的一套基于T4模板引擎中,只有了解T4模板引擎的运作才能让你更好地使用T4,并在适当的时候进行重写自定义。(如下针对“设计时模板”转换过程进行说明)T4模板引擎dll反编译源代码这里下载。模板转换过程这里提供一幅协作图,用于阐释模板转换过程及该过程中各个参与对象。下面的段落将一步一步解释文本转换过程。Custom Too. 阅读全文
posted @ 2012-08-07 18:29 HackerVirus 阅读(495) 评论(0) 推荐(1)
摘要: 作为微软新推出的云服务,Windows Azure越来越受人瞩目。而且Windows Azure和Visual Studio 2010/2012高度紧密地集成,许多熟悉VS的开发者可以非常迅速的将自己的技能快速转向云端;并且最新的Windows Azure不仅仅支持Windows Server操作系统,还支持Linux,可以说,Windows Azure的云宏图更大了。 本章我将介绍如何申请Windows Azure账户。 前言:Windows Azure现在在全世界48个国家提供服务,但是暂时还没有进入中国大陆地区。您需要:您(或者您的朋友)拥有一个中国香港的手机号码或者,您已经拥有微... 阅读全文
posted @ 2012-08-07 16:45 HackerVirus 阅读(1262) 评论(0) 推荐(0)
摘要: Log4Net组件的配置第一步:添加并应用Log4net.dll。第二步:新建Log4Net.config的配置文件,并在其中添加下面的配置信息:<?xml version="1.0" encoding="UTF-8"?><configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> 阅读全文
posted @ 2012-08-07 13:51 HackerVirus 阅读(136) 评论(0) 推荐(0)
摘要: 在Windows中,对于一些不需要显示图形界面的应用程序,我们可以把它做成Windows服务,让它在后台运行,例如一些文件监视服务等。一台电脑中的Windows服务可以在“计算机-管理-服务应用程序-服务”中看到,如图:在这里,我们可以启动或停止一个服务。创建服务:下面我们来创建一个文件监视功能的Windows服务。用VS新建一个项目,模版选择“Windows服务”,在服务代码中会有两个方法:OnStart与OnStop,分别是服务的启动时的执行代码与服务停止时的执行代码。public partial class WatchService : ServiceBase { p... 阅读全文
posted @ 2012-08-07 10:11 HackerVirus 阅读(212) 评论(0) 推荐(0)