代码改变世界

艾伟_转载:探索.Net中的委托

2011-08-29 00:20 by 狼人:-), 190 阅读, 0 推荐, 收藏,
摘要:废话 我本来以为委托很简单,本来只想简简单单的说说委托背后的东西,委托的使用方法。原本只想解释一下那句:委托是面向对象的、类型安全的函数指针。可没想到最后惹出一堆的事情来,越惹越多,罪过,罪过。本文后面一部分是我在一边用SOS探索一边记录的,写的非常糟糕,希望您的慧眼能发现一些有价值的东西,那我就感到无比的荣幸了。 委托前世与今生 大家可能还记得,在C/C++里,我们可以在一个函数里实现一个算法的骨架,然后在这个函数的参数里放一个“钩子”,使用的时候,利用这个“钩子”注入一个函数,注入的函数实现不同算法的不同部分,这样就可以达到算法骨架重用的目的。而这里所谓的“钩子”就是“函数指针”。这个功能 阅读全文

艾伟_转载:.NET重写URL浅谈

2011-08-29 00:20 by 狼人:-), 232 阅读, 0 推荐, 收藏,
摘要:最近小项目要求重写url找了下资料用到了MS的2个dll,微软的例子写得太不明显了。后来终于改好了。 ActionlessForm.dll------用来处理回发 URLRewriter.dll----- 是微软封装好了的一个URL重写组件 添加引用---- 具体的使用说明请去看 http://msdn.microsoft.com/zh-cn/library/ms972974.aspx#XSLTsection123121120120 比我说得好得多。 具体使用方法: 首先web.config的配置: Code highlighting produced by Actipro CodeHigh. 阅读全文

艾伟_转载:Socket开发探秘--基类及公共类的定义

2011-08-29 00:17 by 狼人:-), 196 阅读, 0 推荐, 收藏,
摘要:Socket开发是属于通信底层的开发,.NET也提供了非常丰富的类来实现Socket的开发工作,本篇不是介绍这些基础类的操作,而是从一个大的架构方面阐述Socket的快速开发工作,本篇以TCP模式进行程序的开发介绍,以期达到抛砖引玉的目的。 要掌握或者了解Socket开发,必须了解下面所述的场景及知识。 1、TCP客户端,连接服务器端,进行数据通信 2、TCP服务器端,负责侦听客户端连接 3、连接客户端的管理,如登陆,注销等,使用独立线程处理 4、数据接收管理,负责数据的接受,并处理队列的分发,使用独立线程处理,简单处理后叫给“数据处理线程” 5、数据处理线程,对特定的数据,采用独立的线程进行 阅读全文

艾伟_转载:趣味问题:你能用Reflection.Emit生成这段代码吗?(答案)

2011-08-29 00:17 by 狼人:-), 172 阅读, 0 推荐, 收藏,
摘要:在上一篇博客中我提出了一个问题:如何用.NET的Reflection.Emit生成等价于下面VB代码的三个类型: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->Class A Implements B.IEnd ClassClass B Inherits A Interface I End InterfaceEnd Class 这个问题的难点在于三个类型有循环依赖关系:A实现了接口B.I,因此A依赖于I;B是A的子... 阅读全文

艾伟_转载:趣味问题:你能用Reflection.Emit生成这段代码吗?

2011-08-29 00:17 by 狼人:-), 159 阅读, 0 推荐, 收藏,
摘要:众所周知,Reflection.Emit是非常强大的工具,可以在运行时动态生成各种程序集、类型和方法的IL代码,几乎无所不能。原先我也是这样认为的,但是看了某个人的博客之后我发现想要用Reflection.Emit做一些特殊的事情还是很需要技巧性的。假设你还没有看过那个人的博客(暂时先不公开……)可以尝试一下这个问题。下面的代码可以用vbc.exe正确编译(当然等价C#程序也可以经试验C#编译器无法处理该逻辑,各位参照VB的行为吧)。。。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.... 阅读全文

艾伟_转载:WCF版的PetShop之一:PetShop简介

2011-08-29 00:17 by 狼人:-), 197 阅读, 0 推荐, 收藏,
摘要:本系列文章导航WCF版的PetShop之一:PetShop简介WCF版的PetShop之二:模块中的层次划分WCF版的PetShop之三:实现分布式的Membership和上下文传递 在《WCF技术剖析(卷1)》的最后一章,我写了一个简单基于WCF的Web应用程序,该程序模拟一个最简单的网上订购的场景,所以我将其命名为PetShop。PetShop的目在于让读者体会到在真正的项目开发中,如何正确地、有效地使用WCF。在这个应用中,还会将个人对设计的一些总结融入其中,希望能够对读者有所启发。Source Code从这里下载。 一、PetShop功能简介 PetShop前端是... 阅读全文

艾伟_转载:预防SQL注入攻击之我见

2011-08-29 00:17 by 狼人:-), 142 阅读, 0 推荐, 收藏,
摘要:SQL注入攻击的本质:让客户端传递过去的字符串变成SQL语句,而且能够被执行。 每个程序员都必须肩负起防止SQL注入攻击的责任。 说起防止SQL注入攻击,感觉很郁闷,这么多年了大家一直在讨论,也一直在争论,可是到了现在似乎还是没有定论。当不知道注入原理的时候会觉得很神奇,怎么就被注入了呢?会觉得很难预防。但是当知道了注入原理之后预防不就是很简单的事情了吗? 第一次听说SQL注入攻击的时候还是在2004年(好像得知的比较晚),那是还是在写asp呢。在一次写代码的时候,有同事问我,你的这段代码防注入攻击了吗?什么攻击?这是什么呀。 后来到网上各种找,终于弄明白了是怎么攻击进来的了。注... 阅读全文

艾伟_转载:完美解决在ModalPopupExtender中使用CalendarExtender时被层遮挡的问题

2011-08-29 00:17 by 狼人:-), 152 阅读, 0 推荐, 收藏,
摘要:ASP.NET AJAX Control Toolkit是一组非常不错的基于asp.net的ajax控件,它建立在asp.net 3.0的ScriptManager组件之上,提供了很多非常实用的效果和功能。大家可以去官方网站查看demo,ModalPopupExtender控件用来在网页中实现类似于模式对话框的效果,而CalendarExterder控件提供日期输入,它有几个很重要的属性: TargetControlID:日期输入的目标控件ID,一般来说都都是一个文本框。 Format:日期格式,如yyyy-MM-dd。 PopupButtonID:用户打开日期选择面板的控件ID,如按钮... 阅读全文

艾伟_转载:WinForm界面开发之酒店管理系统--开篇

2011-08-29 00:17 by 狼人:-), 526 阅读, 0 推荐, 收藏,
摘要:星移斗转,时光似箭,不知不觉中,酒店管理系统的开发从开始到现在的结束,已经2个月了,2个月的业余时间,2个月的生活情趣,都寄托在这个软件当中,经历了各种艰苦和困惑,终于得以修成正果---深田之星酒店管理系统的顺利发布。 技术的历程是一个开拓进取、攻克难题的历程,其中有困惑也有兴奋,有苦涩也有甜蜜,在这个过程中,再一次检阅了我的Database2Sharp代码自动生成的开发工具的,再一次从“深田之星送水管理系统”进行升华,技术从来没有尽头,只有不断完善,以及不断的超越和创新。在这个过程中,总会产生一系列的Q&A,碰到了一个难题,如何寻找相应的解决方法,就是非常有趣的问题了。 写这个随.. 阅读全文

艾伟_转载:Lucene.Net学习心得

2011-08-29 00:17 by 狼人:-), 145 阅读, 0 推荐, 收藏,
摘要:一、Lucene点滴 (发音为['lusen]),我经常就读鹿神,是头活蹦乱跳的好鹿,研究它吧,保证感觉它很神!Lucene是一个非常优秀的开源的全文搜索引擎,我们可以在它的上面开发出各种全文搜索的应用来。Lucene在国外有很高的知名度,现在已经是Apache的顶级项目。二、倒排索引原理简述 Lucene是一个高性能的java全文检索工具包,它使用的是倒排文件索引结构。具体解释算法理论就不讲了,直接用例子来说明吧,如果你认真仔细的读懂例子,真正领会了其中的思想,你肯定就明白了Lucene索引的基本原理!记住:理解!把例子用你自己的语言表述出来,就是翻译成你自己的东西,以后你想自己写. 阅读全文

艾伟_转载:WinForm二三事(二)

2011-08-29 00:17 by 狼人:-), 155 阅读, 0 推荐, 收藏,
摘要:监视消息循环 在上一篇文章中,我们讨论了消息循环是响应用户输入的根本,还提到了在WinForm中执行耗时操作是因为这个耗时操作与消息循环在同一个UI Thread上,导致不能处理用户的后续响应,造成程序假死。除此之外,还说到了Form中的WndProc方法,说这个方法就是Win32时代那个处理消息的方法的.Net版。 那么今天这篇文章我们就来编个小程序来模拟一下这个耗时操作,看看是不是如上一篇所说:耗时操作造成消息循环的临时中断不能响应用户后续输入。 程序很简单,就是一个简单的窗体,上面放置一个按钮,按钮里有一个Thread.Sleep(50*1000)模拟耗时操作: public par.. 阅读全文

艾伟_转载:C# WinForm开发系列 - TextBox

2011-08-29 00:17 by 狼人:-), 309 阅读, 0 推荐, 收藏,
摘要:包含金额/日期输入框,带弹出数字面板的计算输入框,安全密码输入等控件(文章及相关代码搜集自网络,仅供参考学习,版权属于原作者! ). 1.CalculatorBox CalculatorBox.rar 2.带行号+自定义颜色显示的TextBox 3.金额输入框 currency_textbox.zip CurrencyBox.rar NumberPicker_src.zip NumericTextBox_src.zip NumberedTextbox.rar 4.日期输入框 DateEdit.rar 5.一个C#的数字字段的控件 6.扩展RichTextBox功能 RichT... 阅读全文

艾伟_转载:WinForm二三事(一)

2011-08-29 00:17 by 狼人:-), 162 阅读, 0 推荐, 收藏,
摘要:在进入正文之前,想请大家先欣赏下面两段代码: 1: //这是一个控制台程序,请先添加System.Windows.Form.dll的引用 2: using System.Windows.Form; 3: 4: public class ConsoleApplicationShowDialog 5: { 6: static void Main() 7: { 8: Form frm = new Form(); 9: frm.ShowDialog(); 10: }... 阅读全文

艾伟_转载:C# WinForm开发系列 - CheckBox/Button/Label/ProgressBar

2011-08-29 00:17 by 狼人:-), 308 阅读, 1 推荐, 收藏,
摘要:包含自定义颜色显示的CheckBox,水晶效果按钮,透明圆角Label,Vista效果的ProgressBar等控件(文章及相关代码搜集自网络,仅供参考学习,版权属于原作者!). 1.自定义颜色显示的CheckBox coloredcheckcontrols.zip 2.逼真的仿Vista效果的按钮控件 crystalbutton.rar VistaButton.rar 3.全定制的XP风格进度条 XpProgressBar功能特征 1. 不怎么占用CPU资源,因为使用了双缓冲的原因 2. 双缓冲提供了很好的平滑处理,不会闪烁 3. 文字使用Anti alias效果,更加好看4. 使用文... 阅读全文

艾伟_转载:Silverlight陷阱:注意程序集引用问题

2011-08-29 00:17 by 狼人:-), 150 阅读, 0 推荐, 收藏,
摘要:假定我要用Silverlight类库实现一些通用控件,然后在应用程序中引用这个控件库。当然,控件通常也要访问其他一些第三方或开源的开发包,例如Silverlight Toolkit。 于是这个项目的依赖关系如下: Silverlight Application => Silverlight Control => Silverlight Toolkit。在Visual Studio中创建好项目之间的引用关系: 然后在类库项目中创建一个简单的控件,比如: Code highlighting produced by Actipro CodeHighlighter (freeware)h. 阅读全文
上一页 1 ··· 275 276 277 278 279 280 281 282 283 ··· 312 下一页