代码改变世界

艾伟:一个简单的关键字过滤算法

2011-08-29 00:02 by 狼人:-), 279 阅读, 0 推荐, 收藏,
摘要:早上看到老赵的《一个较完整的关键字过滤解决方案(上)》文章,讲到怎样在项目中嵌入过滤方案的问题,以及提到 xingd 和 sumtec 两位大师发表的系列互拼的文章,在此我也忍不住谈谈自己遇到的问题以及一个的简化版的算法。 因为过滤关键字机制到处可见,于是聪明的网友就会想到各种各样的方法突破,例如: 1、中文会用繁体字的方法避开关键字扫描2、在关键字中间插入无意思的特殊字符,例如 * & # @ 等,而且个数可变3、使用谐音或拆字法变换关键字 在实现自己的算法时也有些问题: 4、随着时间推移,关键字列表会越来越大,有些论坛常用的正则表达式N次扫描的方法显得效率很低。5、关键字有不同的严 阅读全文

艾伟:WCF以Json格式返回对象,客户端以JS调用显示

2011-08-29 00:02 by 狼人:-), 322 阅读, 0 推荐, 收藏,
摘要:很少写东西,但是看到别人写的文章自己又禁不住写点,写了有时候又觉得不好意思给大家看! 今天好不容易鼓起勇气写点…… 这几天看了一些WCF的资料 第一感觉是:这玩艺太深了 第二感觉是:这玩艺,挺麻烦的(光配置就搞不明白) 今天调了半天,好不容易把这个返回Json对象,在客户端展示的实例给整理出来了。下面分享给大家 此实例:以IIS为Host承载 1、先建一个WCF Service 建一个ServiceContract接口1[ServiceContract] 2publicinterfaceIJsonWCFService 3{ 4/// 5///GetJsonResult 6/// 7/// .. 阅读全文

艾伟:MOSS 2007 项目的开发步骤

2011-08-29 00:02 by 狼人:-), 219 阅读, 0 推荐, 收藏,
摘要:如何利用Sharepoint开发一个完全不同于Sharepoint风格的站点,这是这篇文章要讨论的内容。以下是项目的开发步骤: 步骤1:定义基本的网站地图和设计 就像许多Web项目一样,基本的站点地图和设计告诉开发团队基本的功能需求。站点地图能够使我们知道在站点上的各种不同类型的页面,设计使我们知道需要使用什么样的Feature.两者会随着进程不断的变化,但是他们给我们提供了项目开始的基线。 步骤2:定义自己的Content Columns 和Content Types Content Types 是SharePoint的巨大特色,它为整个站点提供了底层结构。在项目的初期花费时间定义页面布局和 阅读全文

艾伟:新手应该如何有效地学习.net

2011-08-29 00:02 by 狼人:-), 162 阅读, 0 推荐, 收藏,
摘要:前言 对于新手来说,学习.NET编程是一件很痛苦的事情,这倒不是因为学习.NET是一件很难的事情,而是.NET是一个庞大的学习体系,对于新手来会感觉无从下手,从而造成永远都无法入门,看到别人成为高手的时候也只有羡慕的份。而网上很多高手介绍的方法又没有很强的可操作性,比如就叫你狂看书,狂看代码,狂写代码。当然这些方法是一种很好的学习方法,但对初学者来说,不是很合适。就算一些已经入了门的朋友,被人问到“你.NET到底学得怎么样?”时也很难全面系统地回答(我就曾经被一些公司这样问倒,一时真的感觉无从说起)。同时,本文章主要是为了抛砖引玉,也请大家也提出学习.NET的方法(同样也适合学习其他的知识). 阅读全文

艾伟:这下没理由嫌Eval的性能差了吧?

2011-08-29 00:01 by 狼人:-), 191 阅读, 1 推荐, 收藏,
摘要:好吧,你偏要说Eval性能差 写ASP.NET中使用Eval是再常见不过的手段了,好像任何一本ASP.NET书里都会描述如何把一个DataTable绑定到一个控件里去,并且通过Eval来取值的用法。不过在目前的DDD(Domain Driven Design)时代,我们操作的所操作的经常是领域模型对象。我们可以把任何一个实现了IEnumerable的对象作为绑定控件的数据源,并且在绑定控件中通过Eval来获取字段的值。如下: protected void Page_Load(object sender, EventArgs e) { List<Comment> comments = 阅读全文

艾伟:[漫步云端,Azure Services Platform]第二回:第一个云Hello,Cloud!

2011-08-29 00:01 by 狼人:-), 130 阅读, 0 推荐, 收藏,
摘要:1 引言 在上篇《第一回:认识Azure Services Platform》一文中,我带着TechEd的兴奋之情将Azure Service做了一个概要性的介绍,因为没有申请到Invitation Token,所以只能掩饰饥渴的冲动,把完成第一个云端应用的重任留到了第二回。就是历史上所有讲述编程语言的著作以Hello,world开篇一样,本文也不例外的从Hello,Cloud!这一传统开始,实现一个运行在云端服务的Web应用。让我们品尝一下,漫步云端的快感吧:-) 2 必要的准备 实现一个简单的云端应用,如果没有数据库服务支持或者其他服务支持,我们仍然需要一些必要的准备,对于Azure应用而 阅读全文

艾伟:[漫步云端,Azure Services Platform]第一回:认识Azure Services Platform

2011-08-29 00:01 by 狼人:-), 205 阅读, 0 推荐, 收藏,
摘要:1 引言 今天是TechEd 2008北京站的第一天,作为技术盛会自然少不了很多抢眼的新技术面向广大的技术开发者。虚拟化、SQL Server、NUI、云计算,还有很多很多,每个人都充满了惊叹和期待,只有在那一刻,我们才感觉到技术带给世界的诸多魅力,也同时深味作为技术开发者的自豪。我们虽然常常抱怨于技术跟进的光速,需要不断的充实和创新,我们也同时幸福于技术进度的革命,让世界更多姿彩。 就在半年前,我和怪怪聊起了云计算这个在当时看来还算新鲜玩意的概念,而今天就已经第一时间在TechEd的发布会上感受到云技术的实现。这种神奇的速度,确实超出了我所有的想象,作为fans我不得不强迫自己马上试试写出自 阅读全文

艾伟:WPF中的Style(风格,样式)

2011-08-29 00:01 by 狼人:-), 214 阅读, 0 推荐, 收藏,
摘要:在WPF中我们可以使用Style来设置控件的某些属性值,并使该设置影响到指定范围内的所有该类控件或影响指定的某一控件,比如说我们想将窗口中的所有按钮都保持某一种风格,那么我们可以设置一个Style,而不必分别设置每个按钮的风格。Style是作为一种资源被保存下来的. 看下面的例子: <Window.Resources><StyleTargetType="Button"><SetterProperty="Foreground"Value="Blue"/><SetterProperty=" 阅读全文

艾伟:为WPF项目创建单元测试

2011-08-29 00:01 by 狼人:-), 197 阅读, 0 推荐, 收藏,
摘要:可能你已发现一个问题,我们无法使用VS对WPF项目创建单元测试(VS2005不行,VS2008我没试过,但据说也不行),这让人很郁闷,这里将介绍如何使用NUnit来对WPF项目创建单元测试并解决其中的难题(但利用NUnit来对WPF创建单元测试时并不会像针对.Net2.0一样容易,可能会出现一些小问题).1,对普通类(非WPF UI组件)进行测试:这和在.Net2.0中使用NUnit进行测试时一样,不会出现任何问题,参考下面的代码: [TestFixture]publicclassClassTest{[Test]publicvoidTestRun(){ClassLibrary1.Class1o 阅读全文

艾伟:闲话WPF之一(WPF的结构)

2011-08-29 00:01 by 狼人:-), 221 阅读, 0 推荐, 收藏,
摘要:WPF进入我们的生活已经很多年。(写这句话让我想起来了“我不做大哥好多年”。) 个人认为在UI的实践中,用户需要的是易于操作的,更加绚丽的界面。这两个应该是最基本、也是最重要的宗旨。而对于开发人员就是要用最简单的方法开发出尽可能漂亮的界面,并且效率也不能太差。(要求是不是有些过分啦!)除了在一些Web开发和特殊的应用中,很少有开发组配备单独的美工,至少目前是这样吧!根据自己目前对WPF的了解程度,感觉WPF在其中某些方面确实有超强的震撼力。 客观上讲,Vista操作系统确实给我们带来了无可比拟的视觉效果。我自己深有体会,在近2个月的时间里每天都是在Vista下的开发,回家后看到XP系统,始终有 阅读全文

艾伟:WPF简介

2011-08-29 00:01 by 狼人:-), 229 阅读, 0 推荐, 收藏,
摘要:WPF简介WPF的全称是Windows Presentation Foundation,是微软新发布的Vista操作系统的三大核心开发库之一,其主要负责的是图形显示,所以叫Presentation(呈现)。 作为新的图形引擎,WPF是基于DirectX的,当然增加了很多新的功能。其2D和3D引擎的强大看看Vista的界面就明白了,再加上其对Aero图形引擎的支持,更加让你刚到神奇。顺便提一下,Aero是专门为3D桌面开发的引擎,可以让桌面实现神奇的3D翻转,这绝对是操作系统有史以来的一次神奇尝试,虽然对硬件配置的要求也是惊人的,此前已有相关报道称,Vista对显卡十分挑剔就是出于运行Aero的 阅读全文

艾伟:Tip:自定义UpdatePanelTrigger

2011-08-29 00:01 by 狼人:-), 173 阅读, 0 推荐, 收藏,
摘要:大家在使用UpdatePanel的时候有没有遇到过这种情况呢? 页面上放置着3到4的UpdatePanel,它们互相独立,并且UpdateMode都是Condition,这意味着没有哪个UpdatePanel每次都会更新。大多数UpdatePanel都是由某个控件回发而更新,但是其中的一个例外。它没有哪个控件来触发它,它有自己的一套逻辑来判断是否更新。这段逻辑独立于其他控件。 理论上,这段逻辑可以放在页面的某个生命周期里进行判断,例如OnLoad。但是如果,这个判断甚至必须放在PreRenderComplete之后呢?再者,如果我们真的很想把判断是否更新的逻辑给独立与页面的生命周期... 阅读全文

艾伟:手工打造运算符重载过程

2011-08-29 00:01 by 狼人:-), 131 阅读, 0 推荐, 收藏,
摘要:除了J#外,所有微软支持的.NET开发语言现在均支持运算符重载,因此纯粹为C#简化写法一样特性现已成为一种.NET开发中值得研究的一项重要语言特性。有人认为运算符重载其实就是简化写法,满足模拟基本类型操作的小功能,没有必要深究。但我觉得要多思考一层,为什么我们总希望模拟基本类型的操作?因为运算符重载能够将操作中缀化,能够自动推测静态过程的主体。 首先是操作中缀化。函数调用其实是一种前缀操作,函数(代表操作)总是在参数(代表操作数)之前写出。这样执行序列操作时运行的顺序其实和书写的顺序相反: H(x,y)G(H(x, y), z)F(G(H(x, y), z), w) 序列运行的顺序是H-> 阅读全文

艾伟:Ajax基石脚本异步并发调用参数传递

2011-08-29 00:01 by 狼人:-), 174 阅读, 0 推荐, 收藏,
摘要:在Ajax开发框架中,最基本的划分是服务器端和客户端。服务器端相对来说比较简单,只要是可以开发动态网页的语言都可以胜任;客户端浏览器就是JScript/JavaScript的天下了,好像没有看到有VBScript做的Ajax客户端库,就算它只支持IE。由于客户端依赖于脚本并运行在浏览器中,似乎比服务器端的可实现和可管理性还要差些。 这里我说一下Ajax中的A, Asynchronous调用的一些问题。如果我们在异步调用时不为方法传递任何的参数,那么这个问题也就简单甚至不存在了。但是事实上,我们开发一些稍微复杂些的功能时,对于"脚本异步并发调用参数传递"这个功能是很需要的。说 阅读全文

艾伟:在Mono平台开发前你应该知道

2011-08-29 00:01 by 狼人:-), 175 阅读, 0 推荐, 收藏,
摘要:在Mono平台开发前应该做的第一个事情就是,调整好心情,降低期望值: 对于Linux本地C程序员而言,由于习惯了疯狂和有魔力的本地C程序员开发,因此对于Mono提供的诸多限制可能不太满意。大体而言,Mono和.Net程序一样,属于框架开发的范畴,对于框架开发,最好在框架规定的范围内工作,否则会陷入孤立无缘的境地。Mono没有C开发那些唾手可得的工具,也不能对系统进行无限的挖掘,Mono关注的是应用软件开发,不是系统软件(Mono 可以支持本地服务开发)。Mono支持两重类型软件开发,以WEB为中心的软件和以本地为中心的开发。WEB包括常规以上的应用型网站开发,也包括基于服务的模型开发。... 阅读全文
上一页 1 ··· 287 288 289 290 291 292 293 294 295 ··· 312 下一页