跟小D每日学口语
上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 77 下一页
摘要: 与原始的 WMI 相比,使用 .NET Framework 中的 WMI 编写客户端应用程序或提供程序具有多种优势,特别是对于使用 C#(而不是 C++)的开发人员。在这种情况下,编写提供程序意味着为在托管代码中编写的应用程序添加规范。在编写客户端应用程序和提供程序时,.NET Framework 中的 WMI 具有下列优势:利用公共语言运行库功能,例如垃圾回收、自定义索引器和字典。此外,还提供其他公共语言运行库功能,例如自动内存管理、有效部署、面向对象的框架、基于证据的安全性以及异常处理。类定义和实例发布与 .NET Framework 类一起规范化应用程序,以便应用程序可以为 WMI 提供 阅读全文
posted @ 2012-03-09 13:21 Danny Chen 阅读(358) 评论(0) 推荐(1) 编辑
摘要: Roger (roger2yi@gmail.com)一个中等规模的解决方案通常都会包含多个项目,其中一些项目产出静态库,一些产出动态库,一些用于单元测试,还有的产出最终的应用程序执行档。除此以外,根据项目的需求,还会使用一些第三方的库。所以为解决方案设置一个合理的目录结构,不但可以使得代码管理更井井有条,项目成员之间也更容易相互配合,更重要的是能够使得最终应用程序的安装包制作,源代码打包发布和转移变得十分容易。解决方案与项目:从VC6之后VC系列就使用解决方案(Solution)来替代原来的工作空间,用于组织和管理多个相关的项目(Project)。文章首先演示一个虚拟的解决方案和我们期望得到的 阅读全文
posted @ 2012-03-08 12:33 Danny Chen 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 刚看到网上一篇博文里用sql实现了行列转置。sqlserver2005/2008只用一个pivot函数就可以实现sql server 2000很多行的复杂实现。提到转置,立刻想起还在求学阶段曾经做过的一个练习,用c语言实现二维数组的转置。相信大家都做过这个练习。下面利用c#利器也实现一遍,没有实际意义,练练手而已。1、二维数组转置classProgram{publicstaticstring[,]Rotate(string[,]array){intx=array.GetUpperBound(0);//一维inty=array.GetUpperBound(1);//二维string[,]newA 阅读全文
posted @ 2012-03-07 13:33 Danny Chen 阅读(4707) 评论(0) 推荐(0) 编辑
摘要: 早晨看到TerryLee的文章《.NET开源项目介绍及资源推荐:日志记录》,其中说到NLog这个同样开源且非常不错的日志记录工具却没什么中文资料。在TerryLee介绍前,我也不知道NLog这个东西,于是就随便尝试了一下。简单使用了一下之后,觉得NLog真的非常不错。如此漂亮的类库却没有中文资料,似乎有些可惜,于是尝试联系其作者Jaroslaw Kowalski请求翻译NLog网站中的一部分内容。没想到Jaroslaw Kowalski很快给我回了信表示同意,更巧的是居然我们还是同事!文章目录交流之后,我决定先从NLog网站的介绍文档开始,逐步翻译并介绍NLog的使用方法,直至最终推出NLog 阅读全文
posted @ 2012-03-04 15:39 Danny Chen 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 要选择正确的集合,我们首先要了解一些数据结构的知识。所谓数据结构,就是相互之间存在一种或多种特定关系的数据元素的集合。结合下图,我们看一下对集合的分类。集合分类在上图中,可以看到,集合总体上分为线性集合和非线性集合。线性集合指元素具有唯一的前驱和后驱的数据结构类型。非线性集合是指具有多个前驱或后驱的数据结构类型,如:树、图。在FCL中,非线性集合实现的比较少,所以我们将会更多的讨论线性集合。注意:由于类型安全、转型效率等方面的原因,本建议将只讨论泛型集合。线性集合按存储方式,又分为直接存储和顺序存储。所谓直接存储是指:该类型的集合数据元素可以直接通过下标(也即index)来访问,在C#中有三种 阅读全文
posted @ 2012-03-04 15:31 Danny Chen 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 需要明确一下C#程序(或者说.NET)中的资源。简单的说来,C#中的每一个类型都代表一种资源,而资源又分为两类:托管资源:由CLR管理分配和释放的资源,即由CLR里new出来的对象;非托管资源:不受CLR管理的对象,windows内核对象,如文件、数据库连接、套接字、COM对象等;毫无例外地,如果我们的类型使用到了非托管资源,或者需要显式释放的托管资源,那么,就需要让类型继承接口IDisposable。这相当于是告诉调用者,该类型是需要显式释放资源的,你需要调用我的Dispose方法。不过,这一切并不这么简单,一个标准的继承了IDisposable接口的类型应该像下面这样去实现。这种实现我们称 阅读全文
posted @ 2012-03-04 13:51 Danny Chen 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 微软知识库里面有个DataSetHelper,可以对DataSet中的DataTable进行Distinct、Group by、Join和Create。View Code 1 using System; 2 using System.Collections; 3 using System.Data; 4 5 namespace Common 6 { 7 /// <summary> 8 /// DataSet助手 9 /// </summary> 10 public class DataSetHelper 11 { 12 ... 阅读全文
posted @ 2012-03-01 16:15 Danny Chen 阅读(480) 评论(0) 推荐(0) 编辑
摘要: c#(winform)中ComboBox和ListBox添加项完全解决刚开始用.net 的winform开发,发现好些控件都很难用,可能是不熟悉的原因吧,这不,一个给ComboBox添加项的问题就搞的我很头疼,我要同时给一个项添加名字和值,怎么都没法加,查了查资料,又自己汇总测试了下,终于全部搞定了,现把完整的方案写下。用comboBox的数据绑定的方法很简单,建一个数据源,绑定到ComboBox上,然后指定DisplayMember和 ValueMember就可以了。但是感觉好不灵活哦,如果我要在ComboBox上再添加一项,那怎么办?Web里面有ListItem, winform里面怎么没 阅读全文
posted @ 2012-03-01 10:32 Danny Chen 阅读(752) 评论(0) 推荐(0) 编辑
摘要: 在vs2003 和2005中都支持了Build Events, 但是2003只支持单行的命令,而2005可以支持多行命令.要想在2003中执行多行命令,只能把命令写在一个批处理文件中,然后通过调用批处理来执行.1.在Solution explorer中用context meun查看project的property.2.选择Build Events,可以看到Pre-build 和Post-build event command line,以及运行Post-build event 的条件//——————————————————用法收集1.build完后修改build产物的名字(后缀),并覆盖已有的 阅读全文
posted @ 2012-03-01 00:56 Danny Chen 阅读(1681) 评论(0) 推荐(0) 编辑
摘要: 一般来说,直接在子线程中对窗体上的控件操作是会出现异常,这是由于子线程和运行窗体的线程是不同的空间,因此想要在子线程来操作窗体上的控件,是不可能简单的通过控件对象名来操作,但不是说不能进行操作,微软提供了Invoke的方法,其作用就是让子线程告诉窗体线程来完成相应的控件操作。现在用一个用线程控制的进程条来说明,大致的步骤如下:1.创建Invoke函数,大致如下:///<summary>///Delegate function to be invoked by main thread///</summary>privatevoidInvokeFun(){if( prgBa 阅读全文
posted @ 2012-02-29 13:25 Danny Chen 阅读(190) 评论(0) 推荐(0) 编辑
上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 77 下一页