03 2013 档案
摘要:转自:http://www.cnblogs.com/parry/archive/2013/01/08/DotNet_Performance_Tuning_YSlow.html.NET性能调优系列文章系列文章索引.NET性能调优之一:ANTS Performance Profiler的使用.NET性能调优之二:使用Visual Studio进行代码度量.NET性能调优之三:YSlow相关规则的调优工具和方法1.YSlow简介在这篇文章里来谈谈web前端的相关优化,主要遵从YSlow规则,具体的规则意义在YSlow的23条规则描述里已经描述的很清楚,不再赘述,那么这里主要来探讨下如何针对部分规则进
阅读全文
摘要:转自:http://blog.csdn.net/simonezhlx/article/details/7300221尽管很多人相信在.net应用中谈及内存及资源泄露是件很轻松的事情。但GC(垃圾回收器)并不是魔法师,并不能把你完全从小心翼翼处理内存与资源损耗中解放出来。本文中我将解释缘何内存泄露依然存在以及如何避免其出现。别担心,本文不涉及GC内部工作机制及其它.net的资源及内存管理等高级特性中。理解泄露本身及如何避免其出现很重要,尤其因为它无法轻松地自动检测到。单元测试在此方面无能为力。一旦产品中你的程序崩溃了,你需要马上找出解决方案。所以在一切都还不是太晚前,花些时间来学习一下本文吧。T
阅读全文
摘要:转自:http://blog.csdn.net/htsnoopy/article/details/7094219当自己程序遇到性能问题,比如请求反应缓慢,怎么分析是哪里出了问题呢?dottrace可以帮助.net程序跟踪出代码里每个方法的执行时间,这样让我们更清晰的看出是哪里执行时间过长,然后再分析应该怎样解决。Dottrace是由JetBrainshttp://www.jetbrains.com/公司开发的一款产品,它分dottrace Performance和dottrace Memory两个工具,dottrace Performance用来分析代码性能,比如函数执行时间,调用次数,消耗时
阅读全文
摘要:.NET 值类型的性能.NET 引用类型的性能 .NET性能要素.NET 性能测试工具 -- 性能计数器.NET 性能测试工具 -- 事件跟踪器(ETW)C#中的线程 -- 线程入门 C#中的线程 -- 同步基础(线程状态,同步上下文)C#中的线程 -- 同步基础(同步本质,线程安全,线程中断)
阅读全文
摘要:转自:http://www.cnblogs.com/IPrograming/archive/2012/10/10/CSharp_Socket_1.html计算机程序能够相互联网,相互通讯,这使一切都成为可能,这也是当今互联网存在的基础。那么程序是如何通过网络相互通信的呢?这就是我记录这系列的笔记的原因。C#语言从一开始就是为了互联网而设计的,它为实现程序的相互通信提供了许多有用API,这类应用编程接口被称为套接字(Socket)。在开始学习C# Socket之前我们需要先来了解一下基本的术语和概念。阅读目录: 1.计算机网络 2.分组报文 3.协议 3.1 IP协议 3.2 ...
阅读全文
摘要:http://arekang.i.sohu.com/blog/view/185416624.htm
阅读全文
摘要:DES算法的密钥是8字节,由于其算法的特性所致,有一些密钥是不安全的,比如0xFF0xFF0xFF0xFF0xFF0xFF0xFF0xFF,用该密钥对数据进行加密与解密运算,得到的结果是一样的,这样的密钥被称为弱密钥。在.NET中我们一般用DESCryptoServiceProvider来进行DES运算,但是该类会去检测传入的密钥是否为弱密钥,如果是,就直接抛出异常。先看下面的代码:public static string DESEncode(byte[] str, byte[] key) { DESCryptoServiceProvider d...
阅读全文
摘要:/** * 逆转字节数组 * * @param b * @return */ private static byte[] reverse(byte[] b) { byte[] temp = new byte[b.length]; for (int i = 0; i < b.length; i++) { temp[i] = b[b.length - 1 - i]; } return temp; } /** * 读取无符号位的Short数,16位 ...
阅读全文
摘要:http://www.linuxidc.com/Linux/2012-06/63173.htm
阅读全文
摘要:在做C#与其它程序通信的系统时,往往会使用struc操作结构化的数据(如数据包等)。本文简要提出一些使用思路,欢迎各位大牛赐教。一、STRUCT结构设计当数据的结构确定时,总结为下面两种情况:1、数据长度确定(包括字符串):此时可以直接利用struct来构造数据包,比如: [StructLayout(LayoutKind.Sequential, Pack = 1)] struct THeader { public short size; public byte type; public ...
阅读全文
摘要:当于序列化与反序列化,但是不用借助外部文件1、struct转换为byte[]static byte[] StructToBytes(object structObj) { int size = Marshal.SizeOf(structObj); IntPtr buffer = Marshal.AllocHGlobal(size); try { Marshal.StructureToPtr(structObj, buffer, false); byte[] bytes = new byte[size]; Marshal.Copy(...
阅读全文
摘要:using System.Runtime.InteropServices;#region 需要转换的结构 [StructLayout(LayoutKind.Sequential, Pack=1)]//struTest变量在内存中的对齐方式 (指针类型转换成功的必要条件) public struct struTest{ public int intId; public int intName; public DateTime dtBegintime; } #endregion/// <summary> /// xamConverter 的摘要说明。 特定结构变量和byte[]之间的转
阅读全文
摘要:本文要介绍的C#本地读写二进制文件,二进制文件指保存在物理磁盘的一个文件。第一步:读写文件转成流对象。其实就是读写文件流 (FileStream对象,在System.IO命名空间中)。File、FileInfo、FileStream这三个类可以将打开文件,并变成文件 流。下面是引用微软对File、FileInfo、FileStream的介绍System.IO.File类 提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建 FileStream 对象。System.IO.FileInfo类 提供创建、复制、删除、移动和打开文件的实例方法,并且帮助创建 FileStream 对象。无法
阅读全文
摘要:转自:http://www.cnblogs.com/erwin/archive/2009/04/14/1435551.html 最近收到了很多朋友的来信说希望提供DES的C#代码,但是我个人认为,.NET 提供了很多标准函数,没有必要自己写,所以我也只发布了C++的代码,如果大家一定要熟悉加密过程的话,也可以自己动手实现整个过程,这个可以参考我博客里的DES 算法介绍,和yxyDES2 Class的代码,代码注释相当的清楚。 .NET 提供了很多标准加密、解密函数,我简要介绍一下DES,SHA1,RSA的标准函数的使用。如果你想做一个网络安全模块,只需将三种算法结合起来设计一个模型,我相信..
阅读全文
摘要:MD5:Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。MD5用的是哈希函数,在计算机网络中应用较多的不可逆加密算法有RSA公司发明的MD5算法和由美国国家技术标准研究所建议的安全散列算法SHA。SHA1:安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准(Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。对于长度小于2^64位的消息,SHA1会产生一个160位
阅读全文
摘要:转自:http://blog.csdn.net/wwei466/article/details/1747706公司的一个项目快完成了,最后要加上注册验证,翻了n多资料,终于做出来了。现在把体验说一下,以后要用的时候也好找。~~.Net自带的类库里面有个算法。 这个算法的原理是不对称加密的原理。不对称加密原理大家基本上都了解。加密的密码(密钥)分为两个部分,公钥和私钥。通过私钥加密的密文只能通过公钥解密。根据这个特性,我们可以发现只要开发者保存好私钥,即使算法代码被客户端破解,因客户端不知道保存在开发者处的私钥,也无法生成注册码。以下是代码:using System;using System.C
阅读全文
摘要:我这里主要是为了一个序列号在线生成,注册软件的服务提供公钥和私钥,用到了RSA算法。此为数据加密的应用,RSA算法另外一个作用是数字签名,先不研究。知识储备:什么是非对称加密?所谓的非对称加密,就是指加密和解密使用不同的密钥的一类加密算法。这类加密算法通常有两个密钥A和B,使用密钥A加密数据得到的密文,只有密钥B可以进行解密操作(即使密钥A也无法解密),相反,使用了密钥B加密数据得到的密文,只有密钥A可以解密。这两个密钥分别称为私钥和公钥,顾名思义,私钥就是你个人保留,不能公开的密钥,而公钥则是公开给加解密操作的另一方的。根据不同用途,对数据进行加密所使用的密钥也不相同(有时用公钥加密,私钥解
阅读全文
摘要:转自:http://blog.csdn.net/sdfkfkd/article/details/6004847最近 一个项目.net 要调用JAVA的WEB SERVICE,数据采用3DES加密,涉及到两种语言3DES一致性的问题, 下面分享一下, 这里的KEY采用Base64编码,便用分发,因为Java的Byte范围为-128至127,c#的Byte范围是0-255 核心是确定Mode和Padding,关于这两个的意思可以搜索3DES算法相关文章 一个是C#采用CBC Mode,PKCS7 Padding,Java采用CBC Mode,PKCS5Padding Padding, 另一个是C#
阅读全文
摘要:常见的加密算法可以分成三类:对称加密算法,非对称加密算法和Hash算法。在.net架构中,System.Security.Cryptography库中包含了各种加密解密算法对应的类,直接使用这些类中的函数就可以实现各种加密解密。对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥,密钥的生成和分发将成为企业信息部门的恶梦。对称加密算法的安全性取决于加密密钥的保存情况,但要求
阅读全文
摘要:using System;using System.Collections.Generic;using System.Text;using System.Security.Cryptography;using System.IO;public class Encrypt{ MD5加密#region MD5加密 /**//// <summary> /// MD5加密算法 /// </summary> /// <param name="PassWord">待加密的字符串</param> /// <returns>加密后
阅读全文
摘要:usingSystem;usingSystem.IO;usingSystem.Data;usingSystem.Text;usingSystem.Diagnostics;usingSystem.Security;usingSystem.Security.Cryptography;/**//**.Net框架由于拥有CLR提供的丰富库支持,只需很少的代码即可实现先前使用C等旧式语言很难实现的加密算法。本类实现一些常用机密算法,供参考。其中MD5算法返回Int的ToString字串。返回数字字母型结果的算法参见之前Blog文章*/namespace档案数字化加工{/**////<summary
阅读全文
摘要:在WCF下作大文件的上传,首先想到使用的就是Stream,这也是微软推荐的使用方式。处理流程是:首先把文件加载到内存中,加载完毕后传递数据。这种处理方式对小文件,值得推荐,比如几K,几十k的图片文件,文本文件对大文件就不适用,比如10G的电影,把10G的数据加载到缓存中再传递,这是不可想象的。这个时候我们想到的就是断点续传。由于数据量很大。会导致当前程序阻塞,所以采用异步发送的方式,以进度条显示出来,这也是本篇文章所要实现的功能. 另外,目前BasicHttpBinding, NetTcpBinding, 和NetNamedPipeBinding 支持流处理模型,其他的不支持,这也影响stre
阅读全文
摘要:参考文献:http://www.eclipse.org/webtools/community/tutorials/BottomUpAxis2WebService/bu_tutorial.html这篇文章写的非常齐全,唯一在问题出在启动服务器后找不到网页,正确的网址应该是http://localhost:8080/Axis2WSTest/axis2-webjava编写Web Service代码,含文件大文件上传例子下载:http://code.google.com/p/minioa/downloads/detail?name=Axis2WSTest.zip&can=2&q= 基本
阅读全文
摘要:转自:http://blog.csdn.net/luminji/article/details/4987539 GOOGLE一遍,没发现网上有现成代码,没办法,只有对一些零散代码进行改造,得到了本文要达到的效果: 1:服务器端采用webservice; 2:SilverLight端可同时选择多个文件; 3:显示每个文件的上传进度,并可拓展为断点续传; 本文源码下载地址:http://download.csdn.net/source/1893588首先,生成一个SILVERLIGHT应用程序,选择创建WEB。在WEB中新建WEBSERVICE:using System;using System.
阅读全文
摘要:我们在上传大文件时都遇到过这样或那样的问题。设置很大的maxRequestLength值并不能完全解决问题,因为ASP.NET会block直到把整个文件载入内存后,再加以处理。实际上,如果文件很大的话,我们经常会见到Internet Explorer显示 "The page cannot be displayed - Cannot find server or DNS Error",好像是怎么也catch不了这个错误。为什么?因为这是个client side错误,server side端的Application_Error是处理不到的,可以参考这个帖子研究一下产生这个错误的
阅读全文
摘要:服务端: ''' <summary> ''' 接收上传的文件. ''' </summary> ''' <param name="Int_UserAUID"></param> ''' <param name="UserFaithVag"></param> ''' <param name="FileName">&l
阅读全文
摘要:1增加智能提示功能这里我们要修改它触发智能感知的触发器,也就是让它拥有像我们的Visual Studio 2010那样强大的感知功能,即输入S就可提示出所有以S为开头的关键字这样的功能。很简单,选项Auto Activation triggers for java的值,将原有的触发器“.”修改为”.” + 26×2个字母,为什么是26×2?因为字母得分大小写。。具体操作如下:定位到:Windows→Preferences→Java→Editor→Content Assist然后修改:Auto Activation triggers for java的默认值“.”为”.abc
阅读全文