c#软件开发
文章平均质量分 76
acefly
左手程序右手诗 ~_~
展开
-
c#常用编程方法 (二)
28.有些数据字段在程序控制中一般以1,2,3,4..等等进行判断,但是为了增强程序的易读性,需要使用enum将其所代表的意思表达出来,可以单独做一个类来实现这个功能如: namespace enumDemo { public enum RightEnum { //组,用户,角色维护 GroupEdit=1, //功能项维护 FunctionEdit=2, //权限点原创 2008-03-14 21:44:00 · 866 阅读 · 0 评论 -
Asp.net程序性能优化的七个方面
一、数据库操作1、用完马上关闭数据库连接 访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。 连接池的大小是有限的,如果在转载 2008-04-17 10:59:00 · 664 阅读 · 0 评论 -
c#索引示例
class 例子 { public int a, b, c; public int this[string 字] { get { if (字 == "a") return a; if (字 == "b") return b; if (字 == "c") return c; throw new Exception("..."); } set { if (字 == "a") a = value; el转载 2008-05-05 23:14:00 · 306 阅读 · 0 评论 -
C#数据库事务原理及实践(下)
另一个走向极端的错误 满怀信心的新手们可能为自己所掌握的部分知识陶醉不已,刚接触数据库库事务处理的准开发者们也一样,踌躇满志地准备将事务机制应用到他的数据处理程序的每一个模块每一条语句中去。的确,事务机制看起来是如此的诱人——简洁、美妙而又实用,我当然想用它来避免一切可能出现的错误——我甚至想用事务把我的数据操作从头到尾包裹起来。 看着吧,下面我要从创建一个数据库开始:转载 2008-05-05 23:45:00 · 307 阅读 · 0 评论 -
C# Serializable
C# Serializable System.SerializableAttribute 串行化是指存储和获取磁盘文件、内存或其他地方中的对象。在串行化时,所有的实例数据都保存到存储介质上,在取消串行化时,对象会被还原,且不能与其原实例区别开来。 只需给类添加Serializable属性,就可以实现串行化实例的成员。 并行化是串行化的逆过程,数据从存储介质中读取出来,并赋给类的实例转载 2008-07-05 08:39:00 · 1042 阅读 · 0 评论 -
C#数据库事务原理及实践(上)
什么是数据库事务 数据库事务是指作为单个逻辑工作单元执行的一系列操作。 设想网上购物的一次交易,其付款过程至少包括以下几步数据库操作: · 更新客户所购商品的库存信息 · 保存客户付款信息--可能包括与银行系统的交互 · 生成订单并且保存到数据库中 · 更新用户相关信息,例如购物数量等等 正常的情况下,这些操作将顺利进行,最终交易成功,与交易相关的所有数据库信转载 2008-05-05 23:44:00 · 302 阅读 · 0 评论 -
C#如何打开一个进程,以及获取该进程结束的事件
namespace rooksoft.Demo {public class OpenProcess { //静态变量表示当前程序运行中 static bool IsRunning = true; public static void Main() { //建立一个进程对象 System.Diagnostics.Process p = new System.Diagnosti转载 2008-08-07 16:41:00 · 1927 阅读 · 0 评论 -
c#基础概念之internal 修饰符有什么作用
internal 修饰符可以用于类型或成员,使用该修饰符声明的类型或成员只能在同一程集内访问接口的成员不能使用 internal 修饰符值得注意的是,如果为 internal 成员加上了 protected 修饰符,这时的访问级别为 internal 或 protected。只是看字面意思容易弄错,许多人认为 internal protected 应该是“只有同一个程序集中的子类可以访问”转载 2008-08-07 20:09:00 · 307 阅读 · 0 评论 -
Dictionary List类使用
泛型最常见的用途是创建集合类。.NET Framework 类库在 System.Collections.Generic 命名空间中包含几个新的泛型集合类。应尽可能地使用这些类来代替普通的类,如 System.Collections 命名空间中的 ArrayList,HashTable等。下面我们就来说下,几个泛型集合类的用法:一.Dictionary 和HashTable类似此类转载 2008-07-01 21:00:00 · 513 阅读 · 0 评论 -
Application,Session,Cookie,ViewState,Cache的区别
在ASP.NET中,有很多种保存信息的对象.例如:APPlication,Session,Cookie,ViewState和Cache等,那么它们有什么区别呢?每一种对象应用的环境是什么? 为了更清楚的了解,我们总结出每一种对象应用的具体环境,如下表所示: 方法信息量大小保存时间应用范围保存位置Application任意大小整个应用程序的生命转载 2008-11-10 14:24:00 · 246 阅读 · 0 评论 -
二叉树创建及遍历
using System;namespace BinaryTree{ // Binary Tree的结点类 class Node { public int Data { get; set; } public Node LeftSubNode { get; set; } public Node RightSubNode { get;转载 2009-01-03 20:53:00 · 350 阅读 · 0 评论 -
C# 中的委托和事件
C# 中的委托和事件引言委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的转载 2009-10-16 17:19:00 · 248 阅读 · 0 评论 -
C#中Thread.Join()
Thread.Join()在MSDN中的解释很模糊:Blocks the calling thread until a thread terminates有两个主要问题:1.什么是the calling thread? 2.什么是a thread? 首先来看一下有关的概念: 我们执行一个.exe文件实际原创 2010-01-03 22:31:00 · 1075 阅读 · 3 评论 -
使用连接池
连接到数据库服务器通常由几个需要很长时间的步骤组成。必须建立物理通道(例如套接字或命名管道),必须与服务器进行初次握手,必须分析连接字符串信息,必须由服务器对连接进行身份验证,必须运行检查以便在当前事务中登记,等等。 实际上,大多数应用程序仅使用一个或几个不同的连接配置。这意味着在执行应用程序期间,许多相同的连接将反复地打开和关闭。为了使打开的连接成本最低,ADO.NET 使用称为连接池的优化转载 2008-04-17 10:58:00 · 265 阅读 · 0 评论 -
c#多线程的奥妙
一.多线程的概念 Windows是一个多任务的系统,如果你使用的是windows 2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程。什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即转载 2008-04-15 17:01:00 · 468 阅读 · 0 评论 -
C#委托,事件
委托的声明public delegate void MyDelegate(string str);委托是一种特殊的类型(class),用途是来实现对一种方法的封装。在某种事件发生时,自动调用该方法。好处显然易见,它使用户可以自定义自己的方法实现,通过封装,CLR会在相应事件激发时调用你定义的方法,实现你的功能。注1.委托的定义和方法的定义类似,只是在前面加了一个delegate,但委托不是转载 2008-04-04 15:17:00 · 851 阅读 · 0 评论 -
c#程序显示所选目录及其子目录内所有文件
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Collections;using System.Drawing;using System.Text;using System.IO;using System.Windows.Forms;n原创 2008-03-14 21:37:00 · 576 阅读 · 0 评论 -
c#常用编程方法 (一)
1.将字符串NoList以,作为标记转换为字符串数组,用string[] arrList=NoList.Split(,)2.关掉打开的当前窗口:public static void CloseWindow(Page page){ string strScript="/n"+ "window.close();/n"+ "/n"; page.Resp原创 2008-03-14 21:42:00 · 844 阅读 · 0 评论 -
c#对xml的简单操作
xml文件格式如下: localhost sa jiayuan 读取节点中的一个属性 XmlDocument doc=new XmlDocument(); doc.Load("config.xml");//可以再加入路径:如D:/config.xml XmlNode xnuser=doc.SelectSingleNode("userdata"); string flag=xnuse转载 2008-03-14 21:48:00 · 342 阅读 · 0 评论 -
c#常用编程方法 (三)
51.在程序里面调用web.config里面的SQL server连接字段 value="SQL 连接字段"/> 调用:string sql_connection_string=System.Configuration.ConfigurationSettings.AppSettings["wjcking"];52.string currentLi原创 2008-03-14 21:45:00 · 371 阅读 · 0 评论 -
ASP.NET(C#)页面间传值的常见方法
SendValues.aspx: txtFromValue->TextBoxWebRecieve.aspx: txtRecieve->TextBox1: SessionSend Page:Session["Name"]=this.txtFromValue.Text;Server.Transfer("WebRecieve.aspx");Receive Page:thi转载 2008-04-01 22:47:00 · 345 阅读 · 0 评论 -
C#反射实例
1 创建用于反射使用的DLL新建一个C#类库项目,拷贝源代码如下,编译生成DLL(假如DLL的文件名是TestReflect.dll)using System;using System.Collections.Generic;using System.Text;namespace Webtest{ public class ReflectTest { pub转载 2008-04-02 11:27:00 · 328 阅读 · 0 评论 -
ASP.NET中基类页的设计和使用
在Asp.net业务系统的开发过程中,为了保证页面风格的一致性以及减少重复代码的编写,我们需要引入基类页的概念,即:定义一个基类页,让所有的页面都继承这个基类,并在该基类页中加入公用的属性和方法。 实际使用时,按照功能页面划分,可以定义多个基类页,如: class FormBaseclass BizFormBase :FormBas转载 2008-04-02 18:17:00 · 304 阅读 · 0 评论 -
c# static的全部用法
static的全部用法 要理解static,就必须要先理解另一个与之相对的关键字,很多人可能都还不知道有这个关键字,那就是auto,其实我们通常声明的不用static修饰的变量,都是auto的,因为它是默认的,就象short和long总是默认为int一样;我们通常声明一个变量: int a; string s; 其实就是: auto int a;转载 2008-04-01 23:01:00 · 313 阅读 · 0 评论 -
c#哈希表的用法
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的k转载 2008-04-02 20:10:00 · 1887 阅读 · 0 评论 -
反编译C#生成的DLL文件--学习源代码的好软件Reflector
打开Reflector工具并且下载了一个FileDisassembler插件,FileDisassembler插件用于输出程序集的反编译结果到文件中。打开Reflector工具,并导入FileDisassembler插件。导入好后加载程序集将反编译结果输出到指定的文件夹中;Reflector下载地址:http://www.aisto.com/roeder/dotnet 下载时必须输入用户名和Em转载 2008-04-02 17:47:00 · 1352 阅读 · 0 评论 -
C#泛型集合
集合是OOP中的一个重要概念,C#中对集合的全面支持更是该语言的精华之一。 为什么要用泛型集合? 在C# 2.0之前,主要可以通过两种方式实现集合: a.使用ArrayList直接将对象放入ArrayList,操作直观,但由于集合中的项是Object类型,因此每次使用都必须进行繁琐的类型转换转载 2008-04-03 20:52:00 · 322 阅读 · 0 评论 -
你必须知道的.NET之class和struct
1、引言 提起class和struct,我们首先的感觉是语法几乎相同,待遇却天壤之别。历史将接力棒由面向过程编程传到面向对象编程,class和struct也背负着各自的命运前行。在我认为,struct英雄迟暮,class天下独行,最本质的区别是class是引用类型,而struct是值类型,它们在内存中的分配情况有所区别。由此产生的一系列差异性,本文将做以全面讨论。2、基本概念2.1、什转载 2008-04-01 22:41:00 · 373 阅读 · 0 评论 -
APPlication,Session,Cookie,ViewState和Cache之间的区别
在ASP.NET中,有很多种保存信息的对象.例如:APPlication,Session,Cookie,ViewState和Cache等,那么它们有什么区别呢?每一种对象应用的环境是什么? 为了更清楚的了解,我们总结出每一种对象应用的具体环境,如下表所示: 方法 信息量大小转载 2008-04-02 14:44:00 · 303 阅读 · 0 评论 -
继承、实现、依赖、关联、聚合、组合的联系与区别
继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;实现指的是一个class类实现interfac原创 2011-07-12 12:51:29 · 334 阅读 · 0 评论