Fork me on GitHub

2014年4月6日

摘要: C#中的using和yield return混合使用 最近写代码为了为了省事儿用了几个yield return,因为我不想New一个List或者T[]对象再往里放元素,就直接返回IEnumerable了。我的代码里还有很多需要Dispose的对象,所以又用了几个using。写着写着我有点心虚了——这样混合使用靠谱吗? 今天我花时间研究一下,并在这里作个笔记,跟大家分享。笔者水平有限,有哪些理解错误或做的不到位的地方,还请各位专家点拨。 这是我写的方法,循环外面一个using,整个方法里代码执行后释放一个对象。循环里面又一个using, 每次循环yield return后要释放一个对象。那是不. 阅读全文
posted @ 2014-04-06 14:32 HackerVirus 阅读(272) 评论(0) 推荐(0)

2014年4月4日

摘要: ExpandoObject,DynamicObject,DynamicMetaObject接上文:浅谈Dynamic关键字系列之三(上)为什么TryXXX方法没有被调用??将DynamicProduct 中的name修饰符改为private:private string name;可以在TrySetMember方法中设置断点,再次运行:为什么访问修饰符是Public不调用TrySetMember,是Private 就调用了呢??难道是因为private抛出了异常吗??再次看看Msdn对此的TrySetMember方法的解释:Msdn备注…………….动态语言运行库(DLR)将首先使用语言联编程序 阅读全文
posted @ 2014-04-04 19:43 HackerVirus 阅读(326) 评论(0) 推荐(0)
摘要: Net 4.0 之 Dynamic 动态类型 本文主要旨在与网友分享.Net4.0的Dynamic 对Duck Type 的支持。 一、.net4.0主要新特性 .Net4.0在.Net3.5基础上新增的主要特性有:可选参数、命名参数和Dynamic。具体请阅生鱼片的这篇博文。这里我们着重讲解C#4.0的Dynamic特性,对于其他特性大家可以在VS2010内尝试一下。总之.Net在不断进步中。 二、ExpandoObject普通应用 ExpandoObject 类,“需引用System.Dynamic命名空间” 。请看以下代码: 1dynamic Customer =new ExpandoO 阅读全文
posted @ 2014-04-04 19:06 HackerVirus 阅读(233) 评论(0) 推荐(0)

2014年4月3日

摘要: NET和JAVA的比较系列(1)- 体系结构.NET体系结构对于.NET Framework体系结构,参考了"你必须知道的.NET"并”借用“别人的经典体系结构图从宏观上说明一下我的理解。图1简单的说下几个名词:CLR:通用语言运行平台(Common Language Runtime),是.NET框架的核心,与Java界的JVM类似。是代码执行的大管家,提供CTS和基础服务。FCL:类库(Framework Class Library),如图所示提供了很多的标准类型,方便程序设计人员,完成了程序设计基础性工作,作为初学者要知道怎么用这些类库。类库的根就是System。BCL 阅读全文
posted @ 2014-04-03 23:56 HackerVirus 阅读(270) 评论(0) 推荐(0)
摘要: 一个通用的分页存储过程实现-SqlServer(附上sql源码,一键执行即刻搭建运行环境)使用前提 查询表必须有ID字段,且该字段不能重复,建议为自增主键背景 如果使用ADO.NET进行开发,在查询分页数据的时候一般都是使用分页存储过程来实现的,本文提供一种通用的分页存储过程,只需要传入:表名(以DBName.dbo.TableName)的形式Where条件(ID > 0 AND ID 0 ' END ELSE BEGIN SET @WhereField = ' WHERE ' + @WhereFi... 阅读全文
posted @ 2014-04-03 23:54 HackerVirus 阅读(343) 评论(0) 推荐(0)
摘要: 编写高质量代码改善C#程序的157个建议[动态数组、循环遍历、对象集合初始化]前言 软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类。不管是数组还是集合类,它们都有各自的优缺点。如何使用好集合是我们在开发过程中必须掌握的技巧。不要小看这些技巧,一旦在开发中使用了错误的集合或针对集合的方法,应用程序将会背离你的预想而运行。 本文已更新至http://www.cnblogs.com/aehyok/p/3624579.html。本文主要学习记录以下内容: 建议16、元素数量可变的情况下不应使用数组 建议17、在多数情况下使用foreach进行循环遍历 建议18、fo... 阅读全文
posted @ 2014-04-03 23:51 HackerVirus 阅读(2710) 评论(0) 推荐(0)
摘要: Vim配置及说明——IDE编程环境目录Vim配置及说明——IDE编程环境1、基本及字体2、插件管理3、主题风格4、窗口设置5、目录树导航6、标签导航7、taglist8、多文档编辑9、文件搜索10、美化状态栏11、括号匹配高亮12、可视化缩进13、标志无效空格14、快速移动15、括号匹配跳转16、自动补全17、宏定义补全18、快速加减注释19、快速加环绕符20、自动括号补全21、代码对齐22、静态代码分析23、快速跳转到TODO列表24、维基百科25、多光标批量操作26、python语法高亮27、其他说明想起几年前第一次在Linux上面用vim(当时刚从Windows转到Linux下编程),第 阅读全文
posted @ 2014-04-03 23:49 HackerVirus 阅读(500) 评论(0) 推荐(0)
摘要: 《大型网站技术架构》读书笔记 - 网站的技术升级路线内容目录:1.初始架构2.应用服务与数据分离3.使用缓存改善网站性能4.应用服务器集群化5.数据库读写分离6.使用反向代理和CDN7.使用分布式FS和分布式DBS8.使用NoSQL和搜索引擎9.业务拆分附:思维导图《大型网站技术架构》读书笔记 - 网站的技术升级路线本文描述网站从小到大演变过程中的技术升级路线;1.初始架构一台服务器,应用、DB、文件都在一块,使用经典的LAMP模式构建整个站点;优点很明显,开发部署都简单,船小好掉头,做不起来也亏不了多少;2.应用服务与数据分离随着访问量的增长,出现问题了:web性能变差,数据存储空间不够这时 阅读全文
posted @ 2014-04-03 23:45 HackerVirus 阅读(389) 评论(0) 推荐(0)
摘要: ASP.NET MVC显示WebForm网页或UserControl控件学习与使用ASP.NET MVC这样久,还是对asp.net念念不忘。能否在asp.net mvc去显示aspx或是user control呢?这个灵感(算不上灵感,只能算是想法)是来自前些天有写过一篇《多个视图结果显示于一个共用预览视图内》http://www.cnblogs.com/insus/p/3633298.html其中有一个Render方法。以致想起以前开发asp.net时,也经常Render用户控件。即是说把网页经过Render之后,转换为是一串字符串。那我们也一定可以把这串字符串Return给asp.net 阅读全文
posted @ 2014-04-03 23:42 HackerVirus 阅读(242) 评论(0) 推荐(0)
摘要: Apworks框架实战(二):开始使用要使用Apworks进行应用程序开发,您需要安装Visual Studio 2012以上的版本(以下简称Visual Studio 2012+),从Apworks 2.5开始,需要Micrsoft.NET Framework 4.5的支持,因此强烈建议使用Visual Studio 2012+进行开发。获取源代码要获得最新版本的代码,请使用下面的命令获取:git clonehttps://github.com/daxnet/Apworks您也可以直接打开Apworks的首页以在线浏览源代码,或者获取Apworks的最新信息。Apworks的首页地址为:ht 阅读全文
posted @ 2014-04-03 23:30 HackerVirus 阅读(270) 评论(0) 推荐(0)