编程技巧 - 文章列表

  • 扩展GridView控件(六)——数据行响应鼠标的单击和双击事件

    GridView既强大又好用。为了让它更强大、更好用,我们来写一个继承自GridView的控件。 [源码下载] http://files.cnblogs.com/webabcd/yycontrols.rar \n介绍 为了让GridView的数据行可以响应鼠标的单击和双击事件,一般我们会在GridView的RowDataBound事件中给<tr>加上客户端代码,为了简化这个步骤,我们来扩展一下它。 \n控件开发 1、新建一个继承自GridView的类。 复制C#代码保存代码/// <summary>/// 继承自GridView/// </summary>[

  • DataTable操作中的性能问题

    最近的一项工作是关于性能提升方面的。要做的第一个事情是要把很多同类型的DataTable合并到一起,查了很多关于DataTable的相关函数以后,我决定用Merge函数来合并这些DataTable。 DataTable[] srcTables = … ; foreach( DataTable src in srcTables ) { dest.Merge( src ) ; } 但是测试的结果让我很是失望,性能不是一般的不好。经过调查发现性能的瓶颈在Merge函数这里。后来经过测试,发现如果用下面的代码: D

  • 利用HttpRequest登录到某个网站,然后获取网站信息的程序示例

    问题: \n有的网站的相关内容必须要在登录后才可以查看,其登录信息保存在session变量之中。这样,使用asphttp等组件就难以正确得到所要的信息。 \n解决: \n使用asp.net中的httprequest和httpresponse来实现。 \n要点: \n1。 通过附加一个cookiecontainer到httprequest对象中,可以得到登录后返回的代表SESSION ID的COOKIE。 见Login方法 2。 将此COOKIE包含在一个cookiecontainer中并附加到另一个HTTPREQUEST请求中,则可以实现SESSION的还原。见getPage方法 \n

  • 扩展GridView控件(七)——改变通过CheckBox选中的行的样式

    GridView既强大又好用。为了让它更强大、更好用,我们来写一个继承自GridView的控件。 [源码下载] http://files.cnblogs.com/webabcd/yycontrols.rar \n介绍 在GridView中如果每行都有复选框的话,选中了某个复选框则修改该复选框所在行的样式,这是经常要用到的功能,因此我们来扩展一下GridView控件。 \nGridView既强大又好用。为了让它更强大、更好用,我们来写一个继承自GridView的控件。 [源码下载] 1、新建一个继承自GridView的类。 复制C#代码保存代码/// <summary>/// 继承自

  • mscorwks.dll在.Net中的地位以及在.Net代码保护方面的应用

    mscorwks.dll是dotNet的核心文件,尤其是在net2.0中,以前分散的功能都集中到了这个dll中。net1.1中,还有一个文件mscorsvr.dll 和 mscorwks.dll 是同等地位的。它们分别对应于 windows service程序以及 desktop 程序。在net2.0中,它们都统一到了 mscorwks。dll中。同时在net2.0中mscorsn.dll 的功能也合并到了 mscorwks.dll中。它就是dotnet运行库的核心。DotNet的执行引擎(ee),内部对象的实现都在这个dll里面。\n在我们用reflector查看dotnet类库源代码时经常

  • 用ASP.NET上传图片并生成可带版权信息的缩略图

    <%@ Page Language=”C#” ResponseEncoding=”gb2312″ %><%@ import Namespace=”System” %><%@ import Namespace=”System.IO” %><%@ import Namespace=”System.Drawing” %><%@ import Namespace=”System.Drawing.Imaging&#822

  • 保护你的DLL和Code不被别人使用

    保护你的DLL和Code不被别人使用。 大家做项目开发一般都是分层的,比如UI层,业务层,数据访问层。业务层引用数据访问层的DLL(比如dataAccess.dll),并使用dataAccess.dll中的方法。当项目完成并给客户用了,可有些心里BT的客户这个时候也可以请个稍微懂NET的人来引用你的dataAccess.dll并调用其中的方法搞破坏。比如可以直接使用里面的ChangePwd(string UserName,string Pwd)方法把其他用户的密码改了,这个时候就你就……. \n好了,该开始说怎么保护我们的代码了: \n首先我们需要把我们的程序集做成强命

  • 利用MD5加密数据库中的密码

    .NET提供了进行数据加密类,下面就用例子进行说明如何使用MD5进行数据加密。 \n首先,创建一个UserAccount表,字段两个:UserName和Password,类型分别为varchar(25)和binary(16),下面的ASP.NET代码就是创建用户时的具体实现: \n<%@ Import Namespace=”System.Security.Cryptography” %><%@ Import Namespace=”System.Text” %><%@ Import Namespace=”S

  • ASP.NET中常用的文件上传下载方法

    ASP.NET中常用的文件上传下载方法 文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给出几种常见的方法,本文主要内容包括: 1、如何解决文件上传大小的限制 2、以文件形式保存到服务器 3、转换成二进制字节流保存到数据库以及下载方法 4、上传Internet上的资源 \n第一部分: 首先我们来说一下如何解决ASP.NET中的文件上传大小限制的问题,我们知道在默认情况下ASP.NET的文件上传大小限制为2M,一般情况下,我们可以采用更改WEB.Config文件来自定义最大文件大小,如下: \n阅读代码编辑代码运行效果复制HTML代码保存代码<httpRuntime

  • 随机显示数据库记录

    System名称空间有一个Random类,用来产生随机数。本文就介绍利用这个Random类来随机显示数据库记录。\nRandom类有一个重载方法叫Next,它可以产生随机数,它允许输入两个参数,以产生这两个数之间的随机数。例如:\nRandom R = new Random();Random.Next(1,100);将会在产生1-100之间的随机数。\n要随机显示数据库记录,需要知道数据库最大记录数和最小记录数。 \nint RecNo=0,MaxRecNo,MinRecNo; Random R = new Random(); SqlDataReader DR; SqlConnection C