
.NET
文章平均质量分 77
jiangxinyu
这个作者很懒,什么都没留下…
展开
-
在.net中如何把数据导入到Excel
using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebContr转载 2007-01-19 09:33:00 · 1202 阅读 · 0 评论 -
用VS自带的dotfuscator.exe对exe或dll进行简单加密 以保护程序源码
用VS自带的dotfuscator.exe对exe或dll进行简单加密 以保护程序源码 程序编译后 打包安装前用VS自带的dotfuscator.exe对编译后的exe或dll进行简单加密以起到一定保护作用一定程度上阻止VS自带的ildasm.exe或其他反编译工具如Reflector.exe等对程序源码的查看保护自己的程序1. ildasm.exe2. dotfuscator.exe3.转载 2007-09-11 16:27:00 · 3045 阅读 · 0 评论 -
让.Net 程序脱离.net framework框架运行
Net 框架目前逐步在普及了,仍然有很多人在寻找如何让.NET程序脱离.NET框架的方法。现成的工具有 Xenocode 的postbuidle或者vas,还有 Salamander .NET Linker。 另外还有 MaxToCode 作者以前做的 framework linker. 以及一些支持注册表模拟和文件模拟的打包工具molebox,thinstall等。最后还有某网友兜售的一个转载 2007-09-19 09:19:00 · 851 阅读 · 1 评论 -
DataTable操作
DataTable的细节DataTable是表格数据块在内存中的表示。虽然可以手动以编程形式构建一个DataTable,但通常使用DataSet和定义在System.Data.OleDb或System.Data.SqlClient命名空间中的类型,以动态获得一个DataTable。表A-7描述了DataTable中的一些核心属性。表A-7 DataTable的属性转载 2008-03-24 15:57:00 · 1446 阅读 · 0 评论 -
DataTable操作中的性能问题
最近的一项工作是关于性能提升方面的。要做的第一个事情是要把很多同类型的DataTable合并到一起,查了很多关于DataTable的相关函数以后,我决定用Merge函数来合并这些DataTable。 DataTable[] srcTables = ... ; foreach( DataTable src in srcTables ) { dest.Me转载 2008-03-24 15:58:00 · 1005 阅读 · 0 评论 -
了解何时使用 Override 和 New 关键字(C# 编程指南)
了解何时使用 Override 和 New 关键字(C# 编程指南) C# 允许派生类中的方法与基类中的方法具有相同的名称,只要您非常明确应如何处理新方法。下面的示例演示 new 和 override 关键字的使用。首先声明三个类:一个名为 Car 的基类以及从该基类派生的两个类 ConvertibleCar 和 Minivan。基类包含一个可将有关汽车的描述发送到控制台的方法 (转载 2008-03-24 16:52:00 · 614 阅读 · 0 评论 -
显式接口实现(C# 编程指南)
显式接口实现(C# 编程指南) 如果类实现两个接口,并且这两个接口包含具有相同签名的成员,那么在类中实现该成员将导致两个接口都使用该成员作为它们的实现。例如:C# 复制代码interface IControl{ void Paint();}interface ISurface{ void Paint();}class SampleClass : IC转载 2008-03-24 17:00:00 · 749 阅读 · 0 评论 -
抽象类、密封类及类成员(C# 编程指南)
抽象类、密封类及类成员(C# 编程指南) 使用 abstract 关键字可以创建仅用于继承用途的类和类成员,即定义派生的非抽象类的功能。使用 sealed 关键字可以防止继承以前标记为 virtual 的类或某些类成员。有关更多信息,请参见如何:定义抽象属性(C# 编程指南)。 抽象类和类成员 可以将类声明为抽象类。方法是在类定义中将关键字转载 2008-03-24 17:05:00 · 771 阅读 · 0 评论 -
如何:创建和终止线程(C# 编程指南)
如何:创建和终止线程(C# 编程指南) 此示例演示如何创建辅助线程,并用它与主线程并行执行处理。还将演示如何使一个线程等待另一个线程,并正确地终止线程。有关多线程处理的背景信息,请参见托管线程处理和使用线程处理(C# 编程指南)。该示例创建一个名为 Worker 的类,该类包含辅助线程将执行的方法 DoWork。这实际上是辅助线程的 Main 函数。辅助线程将通过调用此方法来开始执转载 2008-03-24 17:07:00 · 1846 阅读 · 0 评论 -
C# 泛型简介
C# 泛型简介发布日期 : 5/30/2005 | 更新日期 : 5/30/2005Juval LowyIDesign 摘要:本文讨论泛型处理的问题空间、它们的实现方式、该编程模型的好处,以及独特的创新(例如,约束、一般方法和委托以及一般继承)。此外,本文还讨论 .NET Framework 如何利用泛型。 下载 GenericsInCSha转载 2008-03-24 17:11:00 · 920 阅读 · 0 评论 -
如何使用 Visual C# 创建线程
如何使用 Visual C# 创建线程本页概要要求 创建包含线程的 Visual C# 应用程序确认它可以使用疑难解答参考 var sectionFilter = "type != notice && type != securedata && type != querywords"; var tocArr转载 2008-03-24 17:13:00 · 1284 阅读 · 0 评论 -
c#中结构体和类的比较
前几天,有位同学问我它们用起来有什么区别,当时也不大清楚,糊弄过去了,但是,人不能自欺欺人,不能连自己的无知也要糊弄! 翻了下书,总结一下。 区别: 结构是一种用关键字struct声明的自定义数据类型。与类相似,也可以包含构造函数,常数,字段,方法,属性,索引器,运算符和嵌套类型等,不过,结构是值类型。 1.结构的构造函数和类的构造函数不同。 a.结构不能包含显式的无参数构造函数。结构成员转载 2008-03-24 17:23:00 · 1629 阅读 · 1 评论 -
让c#执行windows的dos命令
看完这个代码后,不管单行还是多行dos命令,你都可以轻松执行。 private void button2_Click(object sender, EventArgs e) { Process p = new Process(); p.StartInfo.FileName = "cmd.exe";转载 2008-03-24 17:25:00 · 1061 阅读 · 0 评论 -
C# 3.0 新特性概览
1. Visual C# 3.0 新特性概览 在发布visual Studio 2005和C#2.0之后,微软公司又马不停蹄的展示了人们所期望的C#的下一代版本:C# 3.0。尽管C# 3.0并没有标准化,微软还是在PDC(专业程序员会议)发布了一个预览版本,因此心急的程序员可以看到一些所期望的特性,这也是本文所讨论的主要内容: ·隐式类型本地变量 ·匿名变量 ·扩展方法转载 2008-03-24 17:26:00 · 736 阅读 · 0 评论 -
C#3.0新特性之隐式类型局部变量的使用
首先说明一下,此新特性的专题基于MS五月份分布的C#3.0规范,但是官方中文版还没有出来,结合自己的实践和理解,希望能和大家一起分享某些前沿的东东,很有可能一些地方会出错,望抛砖。 在C# 3.0里面, 可以对局部变量进行隐式类型声明, 就是在声明时可以不指定该变量的类型, 变量在初始化的时候会由编译器从表达式的上下文中推出真正的类型, 对开发者来说, 无疑是简化了很多, 主要是通过新的关键转载 2008-03-24 17:27:00 · 705 阅读 · 0 评论 -
C# 3.0新特性体验之Lambda表达式
C#2.0介绍了一个新特性--匿名方法,允许开发者在线(inline)声明自己的函数代码而无须使用委托函数(delegate function)。C#3.0中提供了一个新特性--Lambda表达式,它提供了完成相同目标的更加简洁的格式。让我们在讨论Lambda表达式以前 仔细研究一下匿名方法。 匿名方法 假设你需要创建一个按钮,当点击它的时候更新ListBox里的内容。在C#1.0和转载 2008-03-24 17:28:00 · 682 阅读 · 0 评论 -
C#3.0新特性之扩展方法介绍
C#3.0扩展方法是给现有类型添加一个方法。现在类型即可是基本数据类型(如int,String等),也可以是自己定义的类。以下是引用片段: //Demo--1 //扩展基本类型 namespace TestExtensionMethods { // 必须建一个静态类,用来包含要添加的扩展方法 public static class Extensions转载 2008-03-24 17:29:00 · 672 阅读 · 0 评论 -
不完全类型
C#允许在一个代码文件中存放多个类,但这样往往不便于类的管理,所以一向是提倡一个文件中只存放一个类。不过呢,随着类规模的不断膨胀,一个文件中存放一个类也有些显得臃肿,或者是在某个角度上不便于代码的组织。 因此,C# 2.0中引入了不完全类型的概念,即启用了新的修饰符partial。借助该修饰符,我们可以在多个文件中存放一个类,每个文件只包含该类的某些功能。当然,它并不单单可以修饰clas转载 2008-03-24 17:30:00 · 783 阅读 · 0 评论 -
迭代器
我想大家都应该用过foreach吧。其实foreach就是一种迭代的调用。在这里,我们将讨论一个基本迭代的组成。 为了实现枚举,一个可枚举的(enumerable)的集合要有一个无参的、返回枚举器(enumerator)的GetEnumerator方法。 而要获得枚举器,我们就需要一个迭代器。所谓迭代器,就是一个可以产生有序的值序列的语句块。这里,我们就需要引转载 2008-03-24 17:31:00 · 666 阅读 · 0 评论 -
匿名方法
其实匿名方法说起来也很简单,就是一种不需要名称的内联委托。 以前,我们要写下面这些代码: public class Sample : Form{ Button btn; public Sample{ btn = new Button(); btn.Click += new Even转载 2008-03-24 17:32:00 · 926 阅读 · 0 评论 -
[转]C#中的定制特性(Attributes)
Attributes in C# 介绍 Attributes是一种新的描述信息,我们既可以使用attributes来定义设计期信息(例如 帮助文件,文档的URL),还可以用attributes定义运行时信息(例如,使XML中的元素与类的成员字段关联起来)。我们也可以用attributes来创建一个“自描述”的组件。在这篇指南中我们将明白怎么创建属性并将其绑定至各种语言元素上,另外我们怎样在运行时环转载 2008-03-25 17:42:00 · 1154 阅读 · 0 评论 -
c#中,对DataSet、DataTable的操作
//一、对DataSet的操作: DataSet ds = new DataSet("ds_zhaozhenlong"); //使用GetChanges方法产生一个DataSet修改后的对象的DataSet集合。 DataSet chDs; chDs = ds.GetChanges; //如果在更改ds数据的过程中转载 2008-03-25 17:51:00 · 6518 阅读 · 0 评论 -
C# 字符串操作(转)
1、从字符串中提取子串 StringBuilder 类没有支持子串的方法,因此必须用String类来提取。 string mystring="My name is ynn."; //Displays "name is ynn." Console.WriteLine(mystring.Substring( 3 )); //Displays "ynn" Console.WriteLine(myst转载 2008-03-26 11:11:00 · 817 阅读 · 0 评论 -
C#截取指定长度中英文字符串方法
用C#写的字符串截取函数public string CutStr(string sInString,int iCutLength){ if(sInString==null || sInString.Length==0 || iCutLength int iCount=System.Text.Encoding.GetEncoding("Shift_JIS").GetByteCount转载 2008-03-26 13:38:00 · 5197 阅读 · 2 评论 -
你知道C#中main函数参数的用处吗?
你知道C#中main函数参数的用处吗? C#控制台应用程序下,我们常常看到Main函数带有一个string[] args参数,那么你知道它有什么用处? 步骤1:建立一个控制台应用程序,暂且命名为Main步骤2:贴上下面这段代码,并生成release版本的exe。 int argsLength = args.Length; Console转载 2008-03-25 15:33:00 · 1579 阅读 · 0 评论 -
第九章 配置和调度(rainbow 翻译)
第九章 配置和调度 在上一章,你学到如何创建一个通用语言运行时(CLR)组件,且如何在一个简单的测试应用程序中使用它。虽然CLR组件就要准备装载了,但你还是应该思考以下技术之一:。条件编译。文档注释。代码版本化9.1 条件编译 没有代码的条件编译功能,我就不能继续工作。条件编译允许执行或包括基于某些条件的代码;例如,生成应用程序的一个查错(DEBUG)版本、演示(DEMO)版本或转载 2008-03-25 15:36:00 · 719 阅读 · 0 评论 -
编程实例 C#中的预处理器指令
C#有许多名为预处理器指令的命令。这些命令从来不会被翻译为可执行代码中的命令,但会影响编译过程的各个方面。例如,预处理器可禁止编译器编译代码的某一部分。如果计划发布两个版本的代码,比如基本版本和企业版本,或者针对不同的.NET Framework版本进行编码,就可以使用这些指令。在Anthem.NET的代码中我们经常可以看到这种用法。 预处理器指令的开头都有符号#。 注意: C#中并没有一个像C+转载 2008-03-25 15:47:00 · 935 阅读 · 1 评论 -
定制特性
反射是一个普通术语,描述了在运行过程中检查和处理程序元素的功能。例如,反射允许完成以下任务:● 枚举类型的成员● 实例化新对象● 执行对象的成员● 查找类型的信息● 查找程序集的信息● 检查应用于类型的定制特性● 创建和编译新程序集这个列表列出了许多功能,包括.NET Framewo转载 2008-03-26 09:15:00 · 1095 阅读 · 0 评论 -
反射
12.2 反射本节先介绍System.Type 类,通过这个类可以访问任何给定数据类型的信息。然后简要介绍System.Reflection.Assembly类,它可以用于访问给定程序集的信息,或者把这个程序集加载到程序中。最后把本节的代码和上一节的代码结合起来,完成WhatsNewAttributes示例。12.2.1 System.Type类在本书中的许多场合中都使用了Type转载 2008-03-26 09:16:00 · 2485 阅读 · 0 评论 -
C#面试基础问题
C#面试基础问题 English Version: http://dflying.dflying.net/1/archive/104_c_basic_interview_questions.html 如果你的简历上面写“熟悉/了解C#”,那么你就应该能够回答下面的这些基础问题。我将给出自己的简要答案以供参考。欢迎讨论。如果是“精通”,那么请参考:http://www.cnblogs.com转载 2008-03-26 11:14:00 · 799 阅读 · 0 评论 -
c#.net函数和方法集
1、DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.DateTime.Now; 1.2 取当前年 int 年=currentTime.Year; 1.3 取当前月 int 月=currentTime.Month; 1.4 取当前日 int 日=curre转载 2008-03-26 14:08:00 · 672 阅读 · 0 评论 -
c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)(四)
整个例子的完整代码如下,VS2008下编译测试通过,本人已通过它实现N个项目,欢迎大家评测,谢谢指教public enum DBType ...{ Access, SQL, DB2, Oracle, MySQL } public interface IDBAccess ...{ vo转载 2008-04-02 13:06:00 · 1484 阅读 · 0 评论 -
c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)(一)
首先定义数据库操作的标准接口IDBAccess,定义接口的基本功能;通过基本的接口设置,完成数据访问的统一抽象。public interface IDBAccess ...{ void Init(string strServer, string strDataBase, string strUser, string strPwd); void Open转载 2008-04-02 14:49:00 · 1573 阅读 · 0 评论 -
c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)(三)
各派生类的具体实现,此时只要实现DBAccess的各个虚函数即可。 private class Access : DBAccess ...{ public Access(DBType type) : base(type) ...{ } prote转载 2008-04-02 13:08:00 · 1963 阅读 · 0 评论 -
wicket中日历控件的用法
在我们的日常编程中,数据库的程序基本上都要与SQL语句打交道,SQL语句的编写不可避免的成为一个头疼的工作。且因为SQL语句是STRING类型,因此在编译阶段查不出错,只有到运行时才能发现错误。 本文的解决方案,通过自动生成SQL语句,在一定程度上降低出错的概率,从而提高编程效率。 public interface IClause { void Add(string原创 2008-04-02 17:24:00 · 644 阅读 · 0 评论 -
TextBox的扩展,支持文件夹和各类文件的拖入,同时可设置过滤文件格式!
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。本文地址:http://blog.youkuaiyun.com/peterreg/archive/2008/04/02/2245926.aspx随着软件业的不断发展,智能化及易操作性的要求越来越高。TextBox控件除了作为简单字段的显示和录入的基本功能外,还要支持拖入的高级功能。例如要文件夹或文转载 2008-04-03 11:34:00 · 754 阅读 · 0 评论 -
BackgroundWorker 类
BackgroundWorker 类注意:此类在 .NET Framework 2.0 版中是新增的。 在单独的线程上执行操作。 命名空间:System.ComponentModel程序集:System(在 system.dll 中) 语法 C#public class BackgroundWorker : Component转载 2008-04-07 09:02:00 · 745 阅读 · 0 评论 -
BackgroundWorker的替代者!
楼主oldhunter(老猎人)2006-04-23 23:43:34 在 .NET技术 / 组件/控件开发 提问用过2.0中BackgroundWorker的网友估计都有遭遇不爽的经历,网上有文章说已经被定为BUG了.无BUG版本估计要等.NET的下一个build了. 前两天写了个BackgroundWorker的替代者,我在自己的软件中已经用上了,目前没有发现问题. 用法与转载 2008-04-07 09:21:00 · 864 阅读 · 0 评论 -
在 .NET 2.0 中使用 BackgroundWorker 组件
在 .NET 2.0 中使用 BackgroundWorker 组件原作者: Michael Livshitz 原文 译者: lilyonwin... 08/03/2007 收藏本文 引用 在.NET 2.0应用程序中使用BackgroundWorker组件作者 Michael Livshitz 2007年7月3日BackgroundWorker可以让窗体异步地完成一个操作。转载 2008-04-07 09:25:00 · 705 阅读 · 0 评论 -
如何:在后台运行操作
Windows 窗体编程如何:在后台运行操作 如果有一个需要很长时间才能完成的操作,而且不希望用户界面中出现延迟,则可以使用 BackgroundWorker 类来在另一个线程上运行该操作。下面的代码示例演示如何在后台运行耗时的操作。该窗体具有“开始”和“取消”按钮。单击“开始”按钮可运行异步操作。单击“取消”按钮可停止正在运行的异步操作。每个操作的结果均在 Messa转载 2008-04-07 09:27:00 · 863 阅读 · 0 评论