
.NET Framework
文章平均质量分 94
jelink
这个作者很懒,什么都没留下…
展开
-
如何按照HashTable动态设定类的属性和字段
正好有人问这个,代码非常简单,最基本的应用,直接贴代码 using System; namespace Test { /**//// /// Class1 的摘要说明。 /// class Class1 { /**//// /// 应用程序的主入口点。 /// [STAThr转载 2006-08-25 17:24:00 · 970 阅读 · 0 评论 -
我对static静态成员的理解和疑惑
转载 2006-11-03 14:07:00 · 732 阅读 · 0 评论 -
什么是数据绑定(Winform)
从一个Windows窗体的角度来看,“数据绑定”是一种把数据绑定到一种用户界面元素(控件)的通用机制。在Windows窗体中有两种数据绑定类型:简单绑定和复杂绑定。简单绑定简单绑定是将一个用户界面元素(控件)的属性绑定到一个类型(对象)实例上的某个属性的方法。例如,如果一个开发者有一个Customer类型的实例,那么他就可以把Customer的“Name”属性绑定到一个TextBox的“T转载 2006-10-16 17:16:00 · 2792 阅读 · 0 评论 -
浅谈CLR的内存分配和回收机制
浅谈CLR的内存分配和回收机制 相对于C++程序员来说,C#程序员是非常幸运的,至少我们不需要为内存泄漏(Memory Leak)而头疼,不需要负责内存的分配和回收。但这不意味着我们只需要知道new的语法就可以了,作为一个严肃的C#程序员,我们应该对此有所了解,有助于我们编写性能更好的代码。主要内容:CLR的内存分配机制CLR的回收机制 一、CLR的内存分配机制转载 2006-10-17 23:18:00 · 1582 阅读 · 0 评论 -
如何使用 Visual C# 加密和解密文件
如何使用 Visual C# 加密和解密文件察看本文应用于的产品function loadTOCNode(){} 文章编号 : 307010 最后修改 :转载 2006-10-13 18:00:00 · 2063 阅读 · 3 评论 -
C#里的foreach
C#语言从VB中吸取了一个非常实用的foreach语句。对所有支持IEnumerable接口的类的实例,foreach语句使用统一的接口遍历其子 项,使得以前冗长的for循环中繁琐的薄记工作完全由编译器自动完成。支持IEnumerable接口的类通常用一个内嵌类实现IEnumerator接 口,并通过IEnumerable.GetEnumerator函数,允许类的使用者如foreach语句完成遍历转载 2006-10-03 18:50:00 · 935 阅读 · 0 评论 -
VS.NET中事件丢失的避免方法
在vs.net中经常遇到事件丢失的问题,可以这样避免一下方法一:把InitializeComponent中的注册事件,如下private void InitializeComponent(){ this.DropDownList1.SelectedIndexChanged += new System.EventHandler(this.DropDownList1_Selected转载 2006-09-23 22:12:00 · 827 阅读 · 0 评论 -
SQLDMO For C#
SQLDMO For C#By Kevin Goss Download SQLDMO.zip Many times I have had a need to get at SQL Server details in my applications. Until recently I had to use API calls and bastardized ADO calls to转载 2006-09-23 20:37:00 · 1098 阅读 · 0 评论 -
利用SQLDMO操控SQL Server
在开发基于SQL Server数据库的应用程序时,经常会遇到需要知道SQL Server数据库对象的相关信息的情况,例如SQL Server中有哪些数据库,这些数据库中有哪些数据表,每个数据表有哪些字段,这些字段是什么属性等。利用SQL-DMO(分布式管理对象)来访问SQL Server数据库。SQL-DMO是为Windows 9x与 Windows NT提供的32位OLE对象转载 2006-09-23 20:36:00 · 1321 阅读 · 1 评论 -
.net错误总结
VS2002到VS2003,又到今天的VS2005,给我们广大研发人员提供了极大的方便,但是里面也存在许多异常的错误,偶尔我们会为其所扰,就连微软内部人士也承认,有的异常错误至今尚未修复,下面是一些常见的VS异常错误以及解决方法,这些都是我曾经遇到过的,现整理于下,我相信各位肯定或多或少的也遇到过类似的问题,欢迎各位参与讨论。错误一:Global.asax错误分析器错误 说明: 在分析向此请求提供转载 2006-09-25 23:21:00 · 897 阅读 · 0 评论 -
进一步了解String
今天看到了你真的了解.NET中的String吗? 的文章,写的很不错,对string不错的说明,但是有几点我想补充一下,一旦你的string在堆中创建后,其在内存中都是以const存在,任何的修改都会使其被重新创建为新的string,而指向以前的string的引用将会指向这个新的string!!测试1:看下面的代码:1string s = "1";2Console.WriteLine( Str转载 2006-11-03 14:11:00 · 631 阅读 · 0 评论 -
StringBuilder的实现与技巧
OK..看到公式就明白了..StringBuilder是以当前的Capacity*2来扩充的..所以,在使用StringBuilder需要特别注意,尤其是要拼接或追加N多字符的时候,要注意技巧的使用,可以适当的,有预见性的设置Capacity的值,避免造成过大内存的浪费,节约无谓的内存空间..例如,下列代码就可以根据情况自动的扩展,而避免了较大的内存浪费. 1System.Text.S转载 2006-11-03 14:12:00 · 1126 阅读 · 0 评论 -
DayOfWeek的转换需要这么麻烦吗
有的时候看到论坛上有人为了把英文的DayOfWeek枚举转化成中文,用switch进行一个一个替换,其实不需要这么麻烦。。。如下:string [] Day=new string []{"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};Console.WriteLine(Day[Convert.ToInt16(DateTime.Now.DayOfWeek)]转载 2006-08-25 14:17:00 · 1047 阅读 · 0 评论 -
多线程学习(二)-线程池和定时器——多线程的自动管理
在多线程的程序中,经常会出现两种情况。一种情况下,应用程序中的线程把大部分的时间花费在等待状态,等待某个事件发生,然后才能给予响应;而另外一种情况则是线程平常都处于休眠状态,只是周期性地被唤醒。在.net framework里边,我们使用ThreadPool来对付第一种情况,使用Timer来对付第二种情况。 ThreadPool类提供一个由系统维护的线程池——可以看作一个线程的容器,该容器需要W转载 2006-08-25 10:49:00 · 987 阅读 · 0 评论 -
Net中的反射使用入门
1、 什么是反射2、 命名空间与装配件的关系3、 运行期得到类型信息有什么用4、 如何使用反射获取类型5、 如何根据类型来动态创建对象6、 如何获取方法以及动态调用方法7、 动态创建委托 1、什么是反射Reflection,中文翻译为反射。这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型(class)’组转载 2006-08-25 10:39:00 · 606 阅读 · 0 评论 -
不要忽略c#中的using和as操作符
是不是很多人不用c#中的using和as操作符?甚至不知道? 其实这2个操作符在小处非常有用。 1、using 按照msdn的解释 using 语句定义一个范围,在此范围的末尾将处理对象。 举例: class TestUsing:IDisposable { public void Dispose() {转载 2006-08-25 17:08:00 · 782 阅读 · 0 评论 -
using 语句定义一个范围,在此范围的末尾将自动释放对象,这样就不会占用太多的资源
using 语句定义一个范围,在此范围的末尾将处理对象。using (expression | type identifier = initializer) statement其中: expression 希望在退出 using 语句时调用 Dispose 的表达式。 type identifier 的类型。 identifier type 类型的名称或标识符。定义一个以上 type 类型的 id转载 2006-08-25 12:01:00 · 1310 阅读 · 0 评论 -
Delegate比较全面的例子(原创)
Delegate比较全面的例子(原创) Posted on 2005-02-02 01:28 idior 阅读(4206) 评论(23) 编辑 收藏 引用 收藏至365Key <!---->将Delegate理解为接口,只有一个方法的接口,这样最容易理解。这个方法只有声明,没有实现,实现在别的类。(实际上应该把它看作函数指针,不过接口更容易理解些。) 在转载 2006-11-05 14:53:00 · 1163 阅读 · 0 评论 -
字符串截取固定长度的方法
这个函数也没有什么特别之处,就是可以截取一定长度的字符串,可能小特点就是len是字节,解决了汉字与英文字节不一样导致直接截取到的长度不一样的问题, #region 字符串截取函数public static string CutString(string inputString,int len){ASCIIEncoding ascii = new ASCIIEncoding();int temp转载 2006-11-03 14:46:00 · 1361 阅读 · 0 评论 -
对重写Equals补充--Hashtable实现
昨天发了给你的类重写Equals--检测Class是否相等 ,得到了omnislash 的指点和启发,仔细查了一下.MSDN关于Equals的实现..上个文章中的例子,并不是很完整,当时也是急于说明问题和解决办法..具体的解决方案我会在随后的例子中提供... 既然需要再次重写Equals方法,今天就用Hashtable的实现,先说一下Hashtable,首先Hashtable保存的是以(键转载 2006-11-03 14:13:00 · 905 阅读 · 0 评论 -
给你的类重写Equals--检测Class是否相等
在C#的容器中,常用的三个容器数组,ArrayList,Hashtable..数组比较简单,实现某种单一数据的存储,但是并不能自由插入,移除和容纳不同的对象..,所以ArrayList是数组的替代品,并且由于ArrayList可以自由的添加,删除,插入,读取,给我们提供了足够大的自由性,颇得我的青睐..不过使用中,难免有些缺点,感觉最麻烦的就是检测某对象是否在Items中..因为每一个ne转载 2006-11-03 14:13:00 · 2214 阅读 · 0 评论 -
VS.NET常见错误及解决方法集锦
一.vs.net在新建工程时弹出"Automation 服务器不能创建对象"的解决方案原因是FileSystemObject创建失败的问题,解决的方法:运行Regsvr32 scrrun.dll二. 错误提示: A potentially dangerous Request.Form value was detected from the client (txtTest=""). 由于在.net中转载 2006-09-23 22:13:00 · 838 阅读 · 0 评论 -
在VB.NET中应用SQLDMO
SQLDMO(SQL Distributed Management Objects,SQL分布式管理对象)封装 Microsoft SQL Server 2000 数据库中的对象。SQL-DMO 允许用支持自动化或 COM 的语言编写应用程序,以管理 SQL Server 安装的所有部分。SQL-DMO 是 SQL Server 2000 中的 SQL Server 企业管理器所使用的应用转载 2006-09-23 20:36:00 · 677 阅读 · 0 评论 -
如何判断字符串是否为空串
本文写作缘起于阮的讨论——《FxCop告诉我,检查一个字符串是否为空要用string.Length。》。其实用过FxCop的人都知道它会建议你使用String.Length属性来判断字符串是否为空串,但你又是否明白其中的缘由呢?今天有点闲,特意写下这篇文章,希望有点帮助。1. 三种常用的字符串判空串方法: Length法:bool isEmpty = (str.Length =转载 2006-08-30 16:43:00 · 3711 阅读 · 0 评论 -
Delegate比较全面的例子
将Delegate理解为接口,只有一个方法的接口,这样最容易理解。这个方法只有声明,没有实现,实现在别的类。(实际上应该把它看作函数指针,不过接口更容易理解些。) 在你的类中有一个Delegate就相当于有一个接口。通过这个接口你可以调用一个方法,而这个方法在别的类定义,由别的类来干。 为了说的形象一点,举个例子: 学生考试完后成绩出来了,考的好了老师要表扬,考的不好了老师要批评。转载 2006-08-30 15:47:00 · 712 阅读 · 0 评论 -
Path.Combine (合并两个路径字符串)方法的一些使用细节
System.IO.Path.Combine 简单来说,就是合并两个路径字符串。比如如下调用,Path.Combine(@"C:/11","aa.txt") 返回的字符串路径如后: C:/11/aa.txt这个方法的声明如下:public static string Combine ( string path1, string path2 )我们在合并一些目录的时候,它的两个参数有些特转载 2006-08-30 15:25:00 · 2044 阅读 · 0 评论 -
.NET的几大热点
一:什么是.NET?它包括什么?.Net是为简化在第三代因特网的高分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性,而构建的新一代计算和通信平台。.Net主要包括公共语言运行时(Common Language Runtime)和.Net构架类库。二: .NET的主要优点有哪些? .Net的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支转载 2006-08-31 11:21:00 · 729 阅读 · 0 评论 -
.NET 事件模型教程(三)
.NET 事件模型教程(三) .code { padding: 10px 10px 10px 10px; font-family: 宋体; background-color: #ececec}通过前两节的学习,你已经掌握了 .NET 事件模型的原理和实现方式。这一节我将介绍两个替代方案,这些方案并不是推荐采用的,请尽量采用事件模型去实现。另外,在本节末尾,有一段转载 2006-08-30 15:54:00 · 1198 阅读 · 0 评论 -
.NET 事件模型教程(二)
.NET 事件模型教程(二) .code { padding: 10px 10px 10px 10px; font-family: 宋体; background-color: #ececec}目录 属性样式的事件声明 单播事件和多播事件 支持多播事件的改进 属性样式的事件声明在第一节中,我们讨论了 .NET 事件转载 2006-08-30 15:53:00 · 1165 阅读 · 0 评论 -
.NET 事件模型教程(一)
目录 事件、事件处理程序概念 问题描述:一个需要较长时间才能完成的任务 高耦合的实现 事件模型的解决方案,简单易懂的 VB.NET 版本 委托(delegate)简介 C# 实现 向“.NET Framework 类库设计指南”靠拢,标准实现 事件、事件处理程序概念在面向对象理论中,一个对象(类的实例转载 2006-08-30 15:52:00 · 1428 阅读 · 0 评论 -
委托:一个C#睡前故事
紧耦合从前,在南方一块奇异的土地上,有个工人名叫彼得,他非常勤奋,对他的老板总是百依百顺。但是他的老板是个吝啬的人,从不信任别人,坚决要求随时知道彼得的工作进度,以防止他偷懒。但是彼得又不想让老板呆在他的办公室里站在背后盯着他,于是就对老板做出承诺:无论何时,只要我的工作取得了一点进展我都会及时让你知道。彼得通过周期性地使用“带类型的引用”(原文为:“typed reference” 也就是de转载 2006-08-30 15:50:00 · 568 阅读 · 0 评论 -
应用框架的设计与实现学习手札之类工厂服务——反射
反射—— 应用框架的设计与实现学习手札文野:2006年8月14日星期一概述反射就是动态发现类型信息的能力。它帮助程序设计人员在程序运行时利用一些信息去动态地使用类型,这些信息在设计时是未知的,这种能力类型于后期绑定。反射还支持的更高级的行为,能在运行时动态创建新类型,并且对这些新类型的操作进行调用。 一些在反射中经常使用的类Assembly类Assembly类是可重转载 2006-08-30 10:20:00 · 792 阅读 · 0 评论 -
Visual Studio 2005 代码智能感知加速
使用VS 2005已经有一段时间了,觉得VS 2005相对于2003,代码智能感知能力(代码提示功能)大大增强。但是,速度也明显下降。甚至有时候一个页里代码写多了,在偶的本本上要熬一会儿才见结果。 前几天对微软雅黑字体产生好奇,于是,把代码编辑器里的默认字体设置成了“微软雅黑”,意外的,代码感知速度明显上升。 没有弄清楚是什么原因,如有使用VS2005觉得慢的朋友,转载 2006-08-30 16:55:00 · 2147 阅读 · 1 评论 -
.net中几个经常用到的字符串的截取
string str="123abc456";int i=3;1 取字符串的前i个字符 str=str.Substring(0,i); // or str=str.Remove(i,str.Length-i); 2 去掉字符串的前i个字符: str=str.Remove(0,i); // or str=str.Substring(i); 3 从右边开始取i个字符: str=str.转载 2006-08-31 11:43:00 · 2092 阅读 · 0 评论 -
.NET中获取电脑名、IP地址及用户名方法
在.NET中获取一台电脑名,IP地址及当前用户名是非常简单,以下是我常用的几种方法,如果大家还有其他好的方法,可以回复一起整理: 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.R转载 2006-09-18 13:53:00 · 806 阅读 · 0 评论 -
应该记住的事件
应该记住的事件发布日期: 4/15/2001 | 更新日期: 6/25/2004Eric GunnersonMicrosoft Corporation下载 April.exe本页内容 回顾转载 2006-09-15 12:01:00 · 743 阅读 · 0 评论 -
在C#中应用哈希表(Hashtable)
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的ke转载 2006-09-11 22:00:00 · 857 阅读 · 0 评论 -
手机号规则
/**//// /// 产生由英文和数字组成的指定个数的随机数 /// /// 产生随机数的个数 /// 指定个数的随机英数字符串 public static string GetRandomCode(int number) { string[] arrList = new转载 2006-09-11 21:55:00 · 2520 阅读 · 0 评论 -
readonly vs. const
关于C#中的const和readonly想必使用C# .NET开发的朋友都很了解吧?总结一下const和readonly也就这么几条吧: const和readonly的值一旦初始化则都不再可以改写; const只能在声明时初始化;readonly既可以在声明时初始化也可以在构造器中初始化; const隐含static,不可以再写static const转载 2006-08-30 16:40:00 · 695 阅读 · 0 评论 -
C#中的值类型及装箱
我翻译这篇文章写得很好,解释得很清楚,尤其是其图文,让人思路清晰,比MS提供的SDK上请的好懂多了,反正我当年看了好几次还似懂非懂的。我还会翻译我关于C#中的堆与栈的一个系列文章(共四篇),敬请期待哦。The C# Value Type and Boxing 尽管在.NET框架里,我们不需要为内存管理以及垃圾收集操心,但我们还是应该了解它们,来优化我们的应用程序。其中之一便是,公共转载 2006-08-30 15:45:00 · 996 阅读 · 0 评论