08 2011 档案

摘要:The lock keyword marks a statement block as a critical section by obtaining the mutual-exclusion lock for a given object, executing a statement, and then releasing the lock. The following example includes a lock statement. class Account { decimal balance; private Object thisLock = new Object(); publ 阅读全文
posted @ 2011-08-31 16:19 sunnyboy 阅读(2439) 评论(0) 推荐(0)
摘要:Summary:如何入门使用Data Access Application Block,可以参考Enterprise Library 3.1中文帮助:数据访问应用程序块。这篇文章侧重在DAAB工作原理、代码结构上的一些注解。DAAB中抽象类Database提供了针对数据库操作的接口,从它派生出来的各个数据库类使用工厂方式创建。我们可以基于这个机制进行扩展,实现对其它数据库的支持,例如:Ent Lib 2.0 DAAB添加MySql扩展 MySql5.0.27+MySql .Net Connector 5.0.2beta。DAAB 希望使用通用接口对不同的数据库进行操作。DAAB的创建机制封装了 阅读全文
posted @ 2011-08-30 18:05 sunnyboy 阅读(506) 评论(0) 推荐(0)
摘要:SummaryIn this article I’ll be looking into a trickier part of unit testing– testing the functionality of classes who cannot be instantiated on their own, abstract classes.I’ll show how to overcome this obstacle using “Mock Objects”, a technique which has a whole methodology behind it all on its own 阅读全文
posted @ 2011-08-25 21:37 sunnyboy 阅读(347) 评论(0) 推荐(0)
摘要:OleDbReader是个抽象类,用于封装通过OledDB基本方法,而ExcelOleDB是他的一个实现。而我测试一下抽象类中的私有方法GetData。开示的代码如下: PrivateObject param0 =new PrivateObject(new ExcelOledDBReader()); OleDbReader_Accessor target = new OleDbReader_Accessor(param0); //some code... DataTable actual = target.GetData(filePath, top, columnInfos, skip... 阅读全文
posted @ 2011-08-25 17:30 sunnyboy 阅读(500) 评论(0) 推荐(0)
摘要:关键字就是const。在定义常量时,必须赋予其初始值。一旦赋予了初始值后,就不能修改其值。也就是所谓的常量值不能更改的含义。由于C#是一门纯粹的面向对象语言,并不存在一个常量或者变量游离于对象之外,因此,这些定义,必然都是在一个类型内完成的。关于常量的使用,除了会用作一些算法的临时常量值以外,最重要的是定义一些全局的常量,被其他对象直接调用。而集中这些常量最好的类型是struct(结构)。关于struct我会在后面的章节详细讲解,在这里仅举一例说明常量的这种运用。例如,我们需要在.Net下使用FTP,那么一些特定的FTP代码就可以通过这种方式完成定义,如下所示:public struct Ft 阅读全文
posted @ 2011-08-25 14:59 sunnyboy 阅读(432) 评论(0) 推荐(0)
摘要:青葱岁月 现在很流行一个词,“青葱岁月”,有这样四种很类似的解释: 1、最重要的一点,山西绝大部分方言中“chun的发音就类似与chong”所以说这个词条来自于山西人的口音,不完全是谐音,是口音。 2、“就是指处于成长期间的年轻,用绿色代表年轻,说明不够成熟! ” 3、“字面意思就是像青色的葱一样的岁月。指的是年青时代。” 尝试解释一下,青春岁月,是一种时间、生理上的表述,比较正统,比较学术,比较理智。青葱岁月既然涉及到了葱,就一定跟它有关系。青葱岁月,是一个更形象化的用词,表明人生象青葱一样,虽不成熟却已有味道,辛辣、刺激,但这种辛辣没有岁月的磨砺肯定不是真正的辣、真正的痛楚,多少... 阅读全文
posted @ 2011-08-25 08:51 sunnyboy 阅读(1822) 评论(0) 推荐(0)
摘要:为了使 Team System 测试工具 能够识别出单元测试,此源代码文件必须位于某个测试项目中,而这个项目是 Visual Studio 解决方案的一部分。在生成此项目或生成整个解决方案时,测试项目将生成到包含可执行单元测试的程序集之中。所有单元测试方法都使用 [TestMethod()] 属性进行标记(在 Visual Basic 中则为 <TestMethod()>),并且是 [TestClass()] 类的成员。而这个类又是在 Microsoft.VisualStudio.TestTools.UnitTesting 命名空间中定义的。在生成单元测试时,您可以看到,在所生成文 阅读全文
posted @ 2011-08-20 19:13 sunnyboy 阅读(320) 评论(0) 推荐(0)
摘要:Write Maintainable Unit Tests That Will Save You Time And TearsRoy OsheroveThis article discusses: The truth about unit testingTesting the right thingsCreating maintainable testsCreating readable testsAvoid Partially Relevant Code in Your Setup MethodParting Words There's a lot of talk these day 阅读全文
posted @ 2011-08-18 23:10 sunnyboy 阅读(293) 评论(2) 推荐(0)
摘要:C/C++中near和far的区别 关键字near和far受目标计算机体系结构的影响。目前编程中使用不多。 near关键字创建一个指向可寻址内存低端部分的目标指针。这些指针占用内存的单一字节,并且他们能够指向的内存单元被限制到256个位置,通常是在0x0000~0x00ff范围中。 int near * ptr; far关键字创建一个能够指向内存中任何数据的指针: char far * ptr; near (近)指针:16位段内偏移地址 far(远)指针:16位段地址+16位段内偏移地址 huge(巨)指针:32位规格化的具有唯一性的内存地址 C语言的存贮属性由六种编译模式决定(参见TC集成环 阅读全文
posted @ 2011-08-06 18:21 sunnyboy 阅读(1414) 评论(0) 推荐(1)