分类目录归档:article

Newtonsoft.Json序列化和反序列

读取JSON

string jsonText = "['JSON!',1,true,{property:'value'}]";
 
JsonReader reader = new JsonReader(new StringReader(jsonText));
 
Console.WriteLine("TokenType\t\tValueType\t\tValue");

继续阅读

发表在 article | 标签为 | Newtonsoft.Json序列化和反序列已关闭评论

解决fileSystemWatcher的onChanged的事件触发多次的问题

Q:

FileSystemWatcher 的Changed事件,在我保存某个文本文件的时候,该事件可能会被出发多次,如何使他触发一次?

 

A:

解决fileSystemWatcher的onChanged的事件触发多次的WorkAround方法就是尝试在监视的文件或文件夹发生变化时通知Framework, 具体的代码如下:

继续阅读

发表在 article | 解决fileSystemWatcher的onChanged的事件触发多次的问题已关闭评论

NPOI简介

作者:Tony Qu

========================================

[更新] NPOI 1.2.4 新教程地址:http://tonyqus.sinaapp.com

========================================

NPOI 微博: http://weibo.com/npoi

NPOI QQ交流群: 

群1:189925337

群2:124527967

群3: 116053476

 

更新

2009.3.24  把npoi 1.2 alpha的链接换成NPOI 1.2 beta

2009.11.18  把np...

继续阅读

发表在 article | 标签为 , , | NPOI简介已关闭评论

分布式系统邮件服务器架设

来源:拓波软件 技术支持部

 

设计目标

邮件系统在当今社会,作为一种基础通讯平台,已经不单纯是简单收发邮件,而是成为互联网各种应用的核心,承载越来越重要的应用。中国人口众多,上网人数逐年剧增,使用邮件也日益频繁。邮件系统从建成的那一天起,就面临升级的压力。如何设计一个结构良好的大容量邮件系统,对于系统稳定性、可靠性,对于日后的升级维护有着至关重要的作用。

拓波公司作为一个在邮件领域默默耕耘的公司,以小用户量的企业邮件系统立身,最终希望打造一个坚固的、高度可扩展的、容易管理维护的大容量分布式邮件系统。在设计时,我们主要考虑如下方面:

1. 底层坚固、高度稳定。

为保证系统的稳定可靠,需要在硬...

继续阅读

发表在 article | 标签为 | 分布式系统邮件服务器架设已关闭评论

VNC 安装

1、安装
yum install vnc*
2、启动
/etc/init.d/vncserver start
Starting VNC server: no displays configured [ OK ]
3、配置用户名
CODE:[root@localhost ~]# vi /etc/sysconfig/vncservers
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the line below to start a VNC server on display :1
# as my ...

继续阅读

发表在 article | 标签为 | VNC 安装已关闭评论

Access Top 无效

  如果在查询TOP语句的后面使用Order by,而且Order by字段中有重复值的话,那么这个TOP很可能会失效,会返回所有记录,但如果无重复值,那么TOP功能还是有效的

因此,在ACCESS中使用TOP功能要注意一下order by的字段是否会有重复值

 
但为了保险起见,我们也可以采用“加入主键”的方式:
 
 Select top N from table order by col ,id

用主键作“不可能重复”的保障就可以防止此问题出现了!!

继续阅读

发表在 article | Access Top 无效已关闭评论

ADO RS.OPEN

recordset.Open Source,ActiveConnection,CursorType,LockType,Options

可以写成:
rs.open SQL语句,conn对象,3(游标类型),2(锁定方法)

Source
Recordset对象可以通过Source属性来连接Command对象。Source参数可以是一个Command对象名称、一段SQL命令、一个指定的数据表名称或是一个Stored Procedure。假如省略这个参数,系统则采用Recordset对象的Source属性。

ActiveConnection
Recordset对象可以通过ActiveCon... 继续阅读

发表在 article | 标签为 | ADO RS.OPEN已关闭评论

轻量级 Lock Free 线程安全的 Queue 的C#2.0实现

2.0里面又没有ConcurrentCollection的相关类

不得已,自己写了一个,

本来想用传统的lock实现的, 不过考虑到其中的操作非常轻量级...最终还是用了Lock Free

使用原子操作 InterLocked 替换掉常用的lock关键字

Try起头的方法都有尝试次数限制,超过限制以后就退出并返回false

public sealed class SafedQueue<T>
    {
        #region private Fields
        private int isTaked = 0;
        private Queue<T&g...

继续阅读

发表在 article | 标签为 | 轻量级 Lock Free 线程安全的 Queue 的C#2.0实现已关闭评论

c# 四舍五入

C# 中没有四舍五入函数,程序语言都没有四舍五入函数,因为四舍五入算法不科学,国际通行的是 Banker 舍入法

Bankers rounding(银行家舍入)算法,即四舍六入五取偶。事实上这也是 IEEE 规定的舍入标准。因此所有符合 IEEE 标准的语言都应该是采用这一算法的

Math.Round 方法默认的也是 Banker 舍入法

在 .NET 2.0 中 Math.Round 方法有几个重载方法
Math.Round(Decimal, MidpointRounding)
Math.Round(Double, MidpointRounding)
Math.Round(Dec...

继续阅读

发表在 article | 标签为 | c# 四舍五入已关闭评论

获取文件长度(含网络)

        /// <summary>
        /// 获取文件长度,可为本地或网络
        /// </summary>
        /// <param name="url"></param>
        protected long GetFileLength(string url)
        {
            if (string.IsNullOrEmpty(url)) return 0;

            long length = 0;

继续阅读

发表在 article | 标签为 | 获取文件长度(含网络)已关闭评论

mongodb 操作符

条件操作符 
$gt : > 
$lt : < 
$gte: >= 
$lte: <= 
$ne : !=
<> 
$in : in 
$nin: not in 
$all: all 
$not:
反匹配(1.3.3及以上版本
继续阅读

发表在 article | 标签为 | mongodb 操作符已关闭评论

Generating Extended Validation (EV) SSL Certificates

Just did a project for the “Innovation” team of a large corp. They wanted to see the EV SSL certificates make the IE 7 browser to go green on their test site.

To generate the EV SSL Cert request, I used the following extensions in the openssl .cnf file:

[ ev_req ]

basicConstraints = CA:FALSE
keyUsage ...

继续阅读

发表在 article | 标签为 , | Generating Extended Validation (EV) SSL Certificates已关闭评论

OpenSSL Command

NAME
       ca - sample minimal CA application

SYNOPSIS
       opensslca [-verbose] [-configfilename] [-namesection] [-gencrl] [-revokefile] [-crl_reasonreason]
       [-crl_holdinstruction] [-crl_compromiset... 继续阅读

发表在 article | OpenSSL Command已关闭评论

openssl的证书格式转换

PKCS 全称是 Public-Key Cryptography Standards ,是由 RSA 实验室与其它安全系统开发商为促进公钥密码的发展而制订的一系列标准,PKCS 目前共发布过 15 个标准。 常用的有:
PKCS#7 Cryptographic Message Syntax Standard
PKCS#10 Certification Request Standard
PKCS#12 Personal Information Exchange Syntax Standard
X.509是常见通用的证书格式。所有的证书都符合为Public Key Infras...

继续阅读

发表在 article | 标签为 | openssl的证书格式转换已关闭评论

OpenSSL 配置说明

########################
# OpenSSL 配置文件示范 #
########################
# [注意]这个示范文件并不是默认设置。
HOME = . # 默认的随机数种子文件,建议设置为 /dev/random 或 /dev/urandom
RANDFILE $ENV::HOME/.rnd # 扩展对象定义
# 比如,OpenSSL中并未定义X.509证书的扩展项,在使用到的时候就会从下面...

继续阅读

发表在 article | 标签为 | OpenSSL 配置说明已关闭评论