分类 "C#" 的存档.

hash学习–哈希的原理和代价

哈希表和哈希函数是大学数据结构中的课程,实际开发中我们经常用到Hashtable这种结构,当遇到键-值对存储,采用Hashtable比ArrayList查找的性能高。为什么呢?我们在享受高性能的同时,需要付出什么代价(这几天看红顶商人胡雪岩,经典台词:在你享受这之前,必须受别人吃不了的苦,忍受别人受不了的屈辱),那么使用Hashtable是否就是一桩无本万利的买卖呢?就此疑问,做以下分析,希望能抛砖引玉。

Read more…

【ASP.net文档】用C#实现HTTP协议下的多线程文件传输

很多人都有过使用网络蚂蚁或网络快车软件下载互联网文件的经历,这些软件的使用可以大大加速互联网上文件的传输速度,减少文件传输的时间。这些软件为什么有如此大的魔力呢?其主要原因是这些软件都采用了多线程下载和断点续传技术。如果我们自己来编写一个类似这样的程序,也能够快速的在互联网上下载文件,那一定是非常愉快的事情。下面介绍一下如何利用C#语言编写一个支持多线程下载文件的程序,你会看到利用C#语言编写网络应程序是多么的容易,从中也能体会到C#语言中强大的网络功能。

首先介绍一下HTTP协议,HTTP亦即Hpyer Text Transfer Protocal的缩写,它是现代互联网上最重要的一种网络协议,超文本传输协议位于TCP/IP协议的应用层,是一个面向无连接、简单、快速的C/S结构的协议。HTTP的工作过程大体上分连接、请求、响应和断开连接四个步骤。C#语言对HTTP协议提供了良好的支持,在.NET类库中提供了WebRequest和WebResponse类,这两个类都包含在System.Net命名空间中,利用这两个类可以实现很多高级的网络功能,本文中多线程文件下载就是利用这两个类实现的。 WebRequest和WebResponse都是抽象基类,因此在程序中不能直接作为对象使用,必须被继承,实际使用中,可根据URI参数中的URI前缀选用它们合适的子类,对于HTTP这类URI,HttpWebRequest和HttpWebResponse类可以用于处理客户程序同WEB服务器之间的HTTP通讯。

Read more…

学以致用

各个部门总是有数据库用户查询的需求,每次都要跑去拼凑个sql语句,查出来,再把结果导出成excel,有点繁琐。

于是,自己抽空鼓捣了一个小tools,可以很方便的查询了,而且在导出前会显示sql语句,可以再次灵活的修改sql语句后再进行导出操作,很方便,他们来提需求,马上就可以给他们结果啦~

.Net制作的数据库查询小工具

.Net制作的数据库查询小工具

Read more…

C# Winform中导出DataSet到Excel,使用保存文件对话框

首先,需要添加引用Excel.dll,Excel组件VS.Net本身是没有的,以下是生成Excel.dll的方法。

1.要保证机器本身要安装Microsoft Office。

2.把C:Program FilesMicrosoft OfficeOffice1:【office 安装路径】下的EXCEL9.OLB文件拷贝到C:Visual Studio.NetSDKv1.1Bin:【VS.Net安装路径】路径下。

3.打开Visual Studio .Net2003/2008命令提示,运行TlbImp Excel9.olb Excel.dll ,就会在[C:Visual Studio.NetSDKv1.1Bin]下生成Excel.dll组件。(Tlbimp命令是vs自带的一个工具,位于Microsoft Visual Studio 8SDKv2.0Bin下)

4.把Excel.dll复制到你的项目中,在项目中添加Excel.dll引用就可以了。(最好是用最新版本的Office生成excel.dll,否则旧版本的office的dll有可能在高版本机器上不兼容。)

Read more…

c#中判断控件类型

c#中判断控件类型
1、可用控件的GetType函数,control.gettype().tostring,输出的类型带命名空间,如system.web.ui.webcontrols.button
2、也可用TypeName函数,typename(control),输出的类型不带命名空间,如button控件直接输出button类型
3、If (obj.GetType Is GetType(System.Windows.Forms.CheckBox))
4、If (obj.GetType == typeof(System.Windows.Forms.CheckBox))