Fork me on GitHub

2012年6月13日

摘要: 手把手教你-让VS同类型文件折叠起来-实用小工具(由Newlife提供VS插件下载)2012-06-12 20:59 by asxinyu, 558 visits,收藏,编辑我们都知道,ASP.NET项目中,前台的aspx.cs文件和后台的cs文件可以放在一起,点击+号就可以展开,这个东西的确很实用,可以使得分部类等同一种文件放在一起,代码结构也清晰很多了,当前看起来也不那么累了哦。特别是现在用代码生成器,生成的代码很多,不好组织管理。所以特意分享一个VS宏插件,用来实现将同类型的文件折叠在一起。VS宏插件下载在本文后面,由Newlife团队提供:1.QQ群:16008002.博客:http: 阅读全文
posted @ 2012-06-13 09:44 HackerVirus 阅读(740) 评论(0) 推荐(0)
摘要: 我之前写一篇关于事件订阅的文章(事件的好处~实现对修改的封闭,对扩展的开放!~续),但它主要是订阅静态事件,而今天主要讲的是实例事件,即,当一个事件发布者被实例化后,去订阅它里面的事件,然后当这个事件发布者去触发该事件时,自己执行你订阅的内容,这没什么可说的,一切都很正常。但在B/s系统中,常常都有这样一种需求,即:Order类中有方法GeneratorOrder,即生成订单的方法,这个方法会被UI层的很多方法调用,以实现对不同业务产品的购买,如:购买家电产品,购买成功后应该去和家电有关的成功页;而购买日常用品,成功后应该去与日常用户相关的页面;以后还会有其它业务产品的成功页,需要我们去实现。 阅读全文
posted @ 2012-06-13 09:20 HackerVirus 阅读(231) 评论(0) 推荐(0)
摘要: 理解并发编程中的几种并发方式时刻谨记并发设计当你设计代码利用多核优势的时候,重要的是不要老是想着C#程序代码是独自执行的。C#为并发代码做了设计,也就是很多代码可以在同一个进程里同时执行或者交错执行。相同的类方法可以在并行代码里执行。如果这个方法在静态变量里保存了状态,以后再使用这个状态,这样的并行执行会产生非期望的和不可预料的结果。就像前边解释的,多核微处理器上的并行编程使用的是共享内存模型。如果没有考虑并发,那些在相同的共享内存里的数据可能会导致不可预料的结果。使每个类和方法可以没有副作用的并行执行是一个好的实践。如果你考虑不能讲某些类、方法、组件不能设计成并发的,在设计并行代码前需要对设 阅读全文
posted @ 2012-06-13 09:19 HackerVirus 阅读(254) 评论(0) 推荐(0)
摘要: 很多人,包括搞了十几年软件的老板,都狭隘的以为用户体验就是找个美工出个效果图,实际上并不是这样,我们除了漂亮的界面,还可以从很多方面去提高用户体验。 今天正好是我三十岁生日,没搞什么庆祝,下班后早早回家把这个视频弄出来了,能与大家分享交流,本身就是件很开心的事。(程序员露脸不容易,大家轻点喷) 优酷网不给力,视频本来挺清楚的,但上传到优酷就完了,所以我在这里也提供清晰版给大家下载,文件不大,200多M。 请用迅雷复制下面地址,然后粘贴到新任务中去,即可下载 http://dl.twin.walkbox.vip.xunlei.com/download?g=0A6E113750A1FE15F... 阅读全文
posted @ 2012-06-13 09:18 HackerVirus 阅读(173) 评论(0) 推荐(0)
摘要: 原理爆破是对系统的登录入口发起不间断的请求,达到暴力破解的目的。实际案例某系统存在爆破攻击点,只要模拟以下攻击,就能采用字典破解法,根据分析发现,只要返回状态为302的,为用户名密码正确,也就是被爆破了,状态为200的,为用户名密码错误。在攻击的过程中,我们只要准备好字典,就能顺利实现爆破。像用户名为luminji,密码为123456这样的用户很容易就会被爆破掉。请求:POST /sso/ValidateUser.aspx HTTP/1.1User-Agent: FiddlerAccept-Language: zh-CNContent-Type: application/x-www-form- 阅读全文
posted @ 2012-06-13 09:16 HackerVirus 阅读(396) 评论(0) 推荐(0)

2012年6月12日

摘要: 最近项目中需要增加一个新的功能,即当鼠标停在Datagridview的某一单元格时,如果该单元格的内容是需要显示说明的,就显示一个悬浮框对其中的数据进行解析说明,在网上查了下,主要有两种方法:方法一,使用一个label控件,通过设置label的visible属性来进行显示和隐藏;方法二,使用datagridview的ToolTipText属性。以下是我用于测试的代码: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using Sy 阅读全文
posted @ 2012-06-12 18:33 HackerVirus 阅读(1915) 评论(0) 推荐(0)
摘要: 前段时间,一直分析关于dynamic这块的case,但是对于dynamic和DLR却只有一些很模糊的概念,最近好好研究了一下这一块,有点一知半解,嘿嘿。什么是动态,什么又是动态语言运行时动态即为在编译的时候不执行类型检查,仅在运行时识别对象的类型。这样的话,如果调用了一个类型没有的方法或是属性,在编译的时候并不会报错,但在运行时才会捕获这些错误信息。编程语言可分为静态化语言和动态话语言,C#最初是设计为纯静态化语言,但为了改进与动态语言和框架之间的互操作性,最终决定利用dynamic关键字来支持这一功能。 public static void M(dynamic arg) { ... 阅读全文
posted @ 2012-06-12 16:24 HackerVirus 阅读(225) 评论(0) 推荐(0)
摘要: 在30天敏捷生活(1):意识你的生活方向盘、敏捷个人:你有自己的生活方向盘吗?中提到生活方向盘是敏捷个人的一个重要工具,之前发不过图片和Excel格式的方向盘工具。但现在是移动时代,所以利用空闲时间也编写了一个Android应用,效果图如下。这是我在Android下开发的第一个应用,所以本篇将介绍一下如何从0开始在Android开发这个应用。下载SDKhttp://developer.android.com/sdk/index.html我是在windows下开发,所以下载了installer_r18-windows.exe安装SDK运行上一步下载的installer_r18-windows.e 阅读全文
posted @ 2012-06-12 16:23 HackerVirus 阅读(161) 评论(0) 推荐(0)
摘要: 一、摘要 由于工作需要,就想着把OEA里的多线程提取出来,但OEA 是4.0 的产物,看了一下代码 OEA里的多线程用的是3.0的技术,有戏就想着翻译成2.0的了 :) 我们还在2.0上挣扎着,贴出来也是为了以后可能还会用到,做个备份了,和我一样还在2.0 上挣扎的童鞋有救了¥@……¥*%)。二、本文大纲 a、摘要 。 b、OEA 多线程 。 c、2.0 版本 的多线程 。三、OEA 多线程OEA 多线程的代码被作者放在哪呢,就在OEA 主项目中的Utils中看下图,代码大家可以到可以到BloodyAngel的博客和中可以得到,另附上源码下载地址:OEA框架 2.9 Pre-Alpha 源码公 阅读全文
posted @ 2012-06-12 13:59 HackerVirus 阅读(236) 评论(0) 推荐(0)
摘要: 概念:一个对象的延迟初始化(也称延迟实例化)意味着该对象的创建将会延迟至第一次使用该对象时。延迟初始化主要用于提高性能,避免浪费计算,并减少程序内存要求。以下是最常见的方案:有一个对象的创建开销很大时,应用程序可能不会使用它。例如,假定您在内存中有一个Customer对象,该对象的Orders属性返回一个Orders对象。初始化Orders对象可能需要创建Orders对象的一个大数组(Orders[]),并可能需要数据库连接。如果用户从不访问Orders属性,则没有理由使用系统内存或计算周期来创建Orders对象。通过使用Lazy<Orders>将Orders对象声明为延迟初始化, 阅读全文
posted @ 2012-06-12 13:58 HackerVirus 阅读(568) 评论(0) 推荐(0)