代码改变世界

技巧:使用User Control做HTML生成

2007-12-30 23:06 by Jeffrey Zhao, 23737 阅读, 收藏, 编辑
摘要: User Control大家肯定不会陌生,在使用ASP.NET的过程中,除了aspx页面,最常见的就莫过于ascx了。ascx是一个有独立逻辑的组件,提供了强大的复用特性,合理使用,能够大大提高开发效率。通过User Control直接生成HTML内容其实已经是一个比较常用的技巧了(尤其在AJAX时代),不过网络上这方面的内容比较少,很多人还是在苦苦地拼接字符串,因此在这里我通过一个实例简单介绍一下这个技巧。阅读全文

想要找工作,那么还得先解迷

2007-12-24 00:03 by Jeffrey Zhao, 4864 阅读, 收藏, 编辑
摘要: 这两天写了不少,可惜下一片就不容易了,要想办法怎么写的……写的……让人信服,呵呵。老赵在创业期间所以工作很忙,能够有时间写东西实在不容易。还有就是,1月份老赵这边就要进行扩张了,可能会找两至三个初级开发人员,一至二个测试人员,以及一个前台开发人员。不过不要误会,文章标题写的不是老赵的招聘,而是这个:http://www.networkmirror.com/hUmsXHsC3yihic9B/denv...阅读全文

为WebForms说几句话,以及一些ASP.NET开发上的经验(3)

2007-12-23 18:44 by Jeffrey Zhao, 13407 阅读, 收藏, 编辑
摘要: 有人说,客户端ID污染问题使脚本代码很难做到“内聚”。可能他的意思是将脚本代码提取到js文件中吧。但是我认为,这种污染“迫使”我们必须使用内聚性高的方式进行客户端开发。 这也算是一种因祸得福吧。阅读全文

为WebForms说几句话,以及一些ASP.NET开发上的经验(2)

2007-12-22 22:41 by Jeffrey Zhao, 14991 阅读, 收藏, 编辑
摘要: 在ASP.NET的WebForms刚出现时,各种“演示”看上去真的很美。这个特点微软至今还保留着,各微软技术大会上的演示真的让人感到心潮澎湃。在我看来,那些“激素大会”更是一种推广策略,而并没有将目光集中在技术细节的本身。所以微软的东西似乎总是有入门容易提高难的“毛病”。开发人员被“宠坏”了,上一篇文章中有位朋友说这就是“穷人的孩子早当家”,还是有一定道理的。在.NET环境下我们就像是官宦子弟,不过这并不能成为我们习惯于“吃喝嫖赌”的理由。我们要合理利用富裕的环境带给我们的资源,但是要适当地抛弃一些不好的东西。阅读全文

为WebForms说几句话,以及一些ASP.NET开发上的经验(1)

2007-12-22 02:22 by Jeffrey Zhao, 23434 阅读, 收藏, 编辑
摘要: 我还是想写这篇文章,我只会WebForms平反,而不会“贬低”MVC框架;我只是想证明WebForms的那些缺点到底真的是缺点,还是开发人员自身没有好好利用起这把利器。因此我将会根据我的经验,一一回应对WebForms比较常见的指责。如果措辞上有任何的不妥,也请大家多多包涵。阅读全文

有些话不知道怎么说才好

2007-12-07 01:48 by Jeffrey Zhao, 4905 阅读, 收藏, 编辑
摘要: 有些话不知道怎么说才好。在blog上,msn上,或者Email,老赵一直在回答大家提出的各种问题。虽然自知遗漏不少,但是相信其中的大部分我都是给与回复的——可能质量有高有低,投入有多有少,但是相信老赵每次回答都是负责任的。但是老赵目前发现的问题是,我被问到的大部分问题都非常简单,如果之前搜索过,那么相信都能够找到答案。某些初学者朋友对老赵特别关照,经常在msn上问我这个那个,但是总是希望能够直接得...阅读全文

[EBook]OReilly - High Performance Web Sites

2007-11-26 14:26 by Jeffrey Zhao, 8749 阅读, 收藏, 编辑
摘要: 就是那本书,提出了14条开发高性能Web应用准则的书。阅读全文

创业公司招聘前台开发人员(Front-end Web Developer)

2007-11-23 14:35 by Jeffrey Zhao, 4270 阅读, 收藏, 编辑
摘要: 大家好,老赵开始创业了。老赵目前在的一家“公司”正在起步,自觉机会不错,我们有着大多数其他创业公司无法比拟的优势(但是限于某些原因我无法再这里详细地透露给您)。正因如此,我们需要“少”而“精”的成员来成为技术团队的骨干。目前我们已经有了两个开发人员和一个测试人员,也有了非常专业的设计师,似乎目前唯一欠缺的技术力量就是前台开发人员了。招聘职位:前台开发人员(Front-end Web Develop...阅读全文

在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳进行检测

2007-11-23 09:21 by Jeffrey Zhao, 5469 阅读, 收藏, 编辑
摘要: 在《在Linq to Sql中管理并发更新时的冲突(2):引发更新冲突》一文中,我们描述了Linq to Sql检测在更新时是否产生了冲突的基本方法:将该记录每个字段原来的值和更新时的值进行对比,如果稍有不同则意味着记录被修改过,因此产生了更新冲突。不过您是否有这样的感觉,这种方法实在累赘了一些?因此Linq to Sql提供了另外一种检测并发更新冲突的方式:使用记录的时间戳。这并不是Linq to Sql特有的功能,如果您了解其他的ORM框架的话,就会发现诸如Hibernate也提供了类似的机制——自然,在使用上不会像Linq to Sql那样方便。阅读全文

是否会成为问题——Linq to Sql的执行可能无法复用查询计划

2007-11-21 08:43 by Jeffrey Zhao, 4609 阅读, 收藏, 编辑
摘要: 复用查询计划是Sql Server降低CPU开销,提高性能的一个重要手段。但是Linq to Sql可能无法复用查询计划,这是怎么回事儿呢?阅读全文

Writing Secure Code Third Edition

2007-11-20 19:53 by Jeffrey Zhao, 1936 阅读, 收藏, 编辑
摘要: 《Writing Secure Code》,无比经典的著作。现在David也已经有写第三册的打算了,那么期待一下。http://blogs.msdn.com/david_leblanc/archive/2007/10/17/writing-secure-code-3.aspx阅读全文

在Linq to Sql中管理并发更新时的冲突(2):引发更新冲突

2007-11-20 19:30 by Jeffrey Zhao, 3622 阅读, 收藏, 编辑
摘要: 在上一讲中,我们提到了一些诸如“乐观并发控制”、“悲观并发控制”的概念,以及察看Linq to Sql自动生成sql语句的方法。从这篇文章起我们将继续来查看Linq to Sql在管理并发更新时是如何发现冲突问题的。阅读全文

接下来写点什么好呢?

2007-11-12 22:38 by Jeffrey Zhao, 2433 阅读, 收藏, 编辑
摘要: 前一段时间基本上不写什么东西了,一半原因是没有时间,一半原因是不知道有什么东西可写——现在的资料都愈发齐全了,总觉得看了文档什么都有了。不知道接下来写点什么东西好呢?首先总是把我的Linq To Sql解决更新冲突的那一系列文章写好吧。不过接着呢?可能会写一点关于AJAX安全性方面的问题吧,这方面的内容其实感觉还是很多的——不过东西一多下手就困难了,要整理清楚不容易。还有就是把ASP.NET AJ...阅读全文

在网页里添加Web Live Messenger对话框

2007-11-10 00:37 by Jeffrey Zhao, 9414 阅读, 收藏, 编辑
摘要: 为您的页面也添加一个Web Live Messenger吧!阅读全文

微软推出Sync Framework,意欲与Google Gears竞争

2007-11-05 11:52 by Jeffrey Zhao, 2500 阅读, 收藏, 编辑
摘要: Microsoft Sync Framework是微软推出的完整同步平台,通过它可以完成应用程序、服务及设备的在线协作及离线操作。开发人员也可以建立同步子系统,以整合到自己的程序及任何类型的数据中。Microsoft Sync Framework不仅利用Web服务和离线数据库,它还提供经过优化的P2P同步,支持任何类型的文件,如联系人、视频、图像和设置等。可扩展的框架包 括支持同步相关数据库、NT...阅读全文

编写兼容多浏览器的JavaScript代码——微软JScript团队JScript Deviations from ES3草案

2007-11-02 22:45 by Jeffrey Zhao, 2823 阅读, 收藏, 编辑
摘要: 实话说,常见的JavaScript在不同浏览器的区别并非那么难以处理,只要有一定JavaScript开发经验就会大体知道该如何“回避”某些问题。不过这份文档还是仔细比对了ECMAScript 3标准以及JavaScript在IE、FireFox、Safari、Opera四款浏览器中的实现,希望能够对JavaScript开发人员有帮助——区别的确很大,之前还真的没有想到这些。http://blogs...阅读全文

中央政治局常委的职业生涯对大家的启迪(转载)

2007-11-01 23:06 by Jeffrey Zhao, 2950 阅读, 收藏, 编辑
摘要: 第一,不要怕起点低。吴邦国毕业于清华大学电子系,可谓名校好专业。毕业后在电子管三厂当工人,慢慢地从技术员,副科长,一直到九年后,才升到厂技术科科长。工人有什么不能当的?第二,不要怕地方偏。温家宝地质大学研究生毕业后,到甘肃某地质队当技术员、政治干事,一直到十年后,才升到该地质队副队长。天津人,在甘肃干到四十岁。哪里不一样?第三,不要怕学校不理想。贾庆林毕业于石家庄工业管理学校,毕业后当普通技术员十...阅读全文

微软的网络分析服务 - Gatineau Web Analytics Begins Beta Today!

2007-10-31 21:02 by Jeffrey Zhao, 1727 阅读, 收藏, 编辑
摘要: http://blogs.msdn.com/adcenter/archive/2007/10/29/project-gatineau-web-analytics-begins-beta-today.aspxWe are happy to announce that Project Gatineau, Microsoft’s new, free web analytics service, is r...阅读全文

在Linq to Sql中管理并发更新时的冲突(1):预备知识

2007-10-30 23:49 by Jeffrey Zhao, 5290 阅读, 收藏, 编辑
摘要: 无论与目前的ORM框架相比有没有优势,Linq to Sql在语言和平台的级别上为我们提供了一种新的操作对象和数据的方式,在一定程度上为我们解决了Object != Data的问题。在实际应用中,对于数据库的操作往往有着天生的并发性,因此在更新数据时可能会产生冲突。有些时候,如果没有合理的解决冲突问题,轻则让用户摸不着头脑,重则让系统数据处于一种不一致的状态。Linq to Sql自然考虑到了这一点,本系列讨论的内容,就是在使用Linq to Sql时,如何管理并发更新时产生的冲突。   本文为这个系列的第一篇,将讨论一些预备知识,它们是进行后续研究的基础。阅读全文

我们到底该怎么学技术?如何成为一个优秀的技术人员?

2007-10-29 18:47 by Jeffrey Zhao, 27708 阅读, 收藏, 编辑
摘要: 看了不要迷失在技术的海洋中,深表同意。在后来的评论中大家也表达了自己的看法。让我觉得很有意思的是,大家的观点惊人地一致——几乎没有反对的声音。不过从经验上来看,意见太统一也不一定是一件好事。我有时也会小人之心地想,表示赞同的朋友们是真与LoveCherry的想法一致,还是仅仅因为自己以前对待技术随波逐流不堪所累,现在把这篇文章作为救命稻草看待,追求自身的心理平衡呢?LoveCherry写这篇文章,是基于他对于技术和思想的深度。如果我们没有达到这样的程度,是否会误解他的意思,得到的仅仅是一种心理安慰,却失去了更多东西呢?阅读全文

上海激动集团有限公司诚聘优秀技术人员(已停止,谢谢大家支持)

2007-10-11 02:46 by Jeffrey Zhao, 3598 阅读, 收藏, 编辑
摘要: 招聘职位:
1、软件开发工程师
2、面向测试软件开发工程师阅读全文

WCF在安全性方面的支持(1):一些概念

2007-07-25 02:32 by Jeffrey Zhao, 8704 阅读, 收藏, 编辑
摘要: 对于一个应用程序来说,最重要的特性之一就是安全性。安全性是如此的重要,自然WCF也会为它提供了良好的支持,否则也无法称之为一个成熟的模型了。阅读全文

客户端访问Web Service方法的一个细节

2007-07-23 22:02 by Jeffrey Zhao, 13087 阅读, 收藏, 编辑
摘要: 之前遇到一个要求,需要能够取消一个正在进行中的Web Service。这也是我第一次遇到这个功能,不过不难,我想。既然ASP.NET AJAX的客户端与服务器端通信完全通过Microsoft AJAX Library的异步通信层进行,那么我们只要得到正在请求Web Service的Sys.Net.WebRequest对象,调用其abort方法就可以了。但是究竟应该如何得到这个对象呢?其中似乎还有这么一些问题……阅读全文

toString方法无法被继承?

2007-07-17 00:23 by Jeffrey Zhao, 7913 阅读, 收藏, 编辑
摘要: 在我看来,toString方法是一个类最重要的方法之一。在JavaScript中,将一个对象转化为字符串形式的默认方法就是调用其toString方法。因此,为类型实现一个合理的toString方法对于开发和调试都有一定的好处。在面向对象编程中,在父类中定义toString方法,以此为它的各个子类提供相似的字符串表现形式是常用的做法之一,但是如果您使用Microsoft AJAX Library的面向对象机制进行开发时就会遇到一个问题。那就是toString方法无法被继承。说的更明白一些,就是子类无法获得父类的toString方法的实现。除非在子类中直接定义一个toString方法,否则它只能含有JavaScript中默认的toString方法。很显然,这没有任何意义,也失去了面向对象的重要特性。这是为什么?又该如何解决呢?阅读全文

意外得到了一个免费的HttpWatch Professional的License

2007-07-12 20:43 by Jeffrey Zhao, 27589 阅读, 收藏, 编辑
摘要: 不久前在Code Project上写了一篇文章《Client-side caching for script methods access in ASP.NET AJAX》,提到了HttpWatch Basic Edition的使用。没想到今天HttpWatch开发公司的一个员工写了封邮件给我,说对于我在文章里提到HttpWatch表示感谢,并且如果愿意给我一个免费的HttpWatch Profe...阅读全文

Tip:在使用AjaxControlTookit的控件时响应事件

2007-07-11 22:31 by Jeffrey Zhao, 7872 阅读, 收藏, 编辑
摘要: AjaxControlTookit中控件的关键在于客户端的Behavior对象,Behavior对象大都有丰富的属性,方法和事件。在目前的版本中,为某些Behavior添加Event Handler并非一件很容易的事情。相信今后的AjaxControlToolkit版本中将会为一些较早的Extender补充对于客户端事件的支持,让我们拭目以待吧,只是眼下我们还需要使用一些较为有技巧的方式来实现功能了。阅读全文

使用ASP.NET AJAX访问Script Method时启用客户端缓存

2007-07-02 12:31 by Jeffrey Zhao, 6658 阅读, 收藏, 编辑
摘要: 缓存是开发高性能和高可用性Web应用的重要手段之一。作为ASP.NET AJAX的关键功能,从客户端访问Script Method会被大量用于使用ASP.NET开发的AJAX应用。这个功能有一个内置的服务器端缓存机制,不过如果我们能在客户端进行缓存则会得到更好的效果。阅读全文

评上了7月份的Microsoft MVP

2007-07-02 04:30 by Jeffrey Zhao, 7843 阅读, 收藏, 编辑
摘要: 昨天晚上觉得困,于是躺到床上去休息了一会儿,没想到醒来以后就发现了一封信,告诉我当选了7月份的MVP(我们的Cat Chen也同样当选了,园子里肯定还有其它朋友)。自从去年9月份登陆博客园以来,写技术博客已经成了我工作和生活中不可缺少的一部分了,它让我认识了不少志同道合的朋友,也给我带来了不少的机会。不得不说,在这一年里我提高了很多。交流,比一味地吸收让我得到了更多。 MVP不是目标,它只是过程中...阅读全文

偷得浮生半日闲

2007-06-28 14:59 by Jeffrey Zhao, 2605 阅读, 收藏, 编辑
摘要: 感觉时间越来越不够用了,上午看到了李锟老师在CSDN的AJAX技术讨论聊天室,本想去看看,却发现只能看到别人和李锟老师的话,我却无法说一个字。有话不能讲的感觉真郁闷,我还是自己写文章去了……不过为什么会发生这个情况呢?有没有哪位朋友可以把我的问题反馈给CSDN一下呢?阅读全文

Mono开发者在21天内实现Linux Silverlight

2007-06-26 20:56 by Jeffrey Zhao, 3399 阅读, 收藏, 编辑
摘要: 微软在维加斯的会议上向外界隆重介绍Silverlight之后,Novell的Miguel de Icaza就召集了Mono小组的一群开发者,创造了一个Linux下的类似执行工具Moonligh。难以置信的是,他们只用了21天(据说微软用了两年来开发Silverlight)。在参加Las Vegas Mix大会之前,de Icaza接受了一位微软法国代表的邀请在巴黎观看了10分钟的预先展示,除此之外...阅读全文

ScriptPath属性的拙劣设计

2007-06-25 20:45 by Jeffrey Zhao, 5362 阅读, 收藏, 编辑
摘要: 您在为AjaxControlTookit开发Extender控件时使用ScriptPath属性吗?ScriptPath属性的拙劣设计几乎使它成为了ExtenderControlBase类中最没有用的属性了。阅读全文

Scaling a Rails Application from the Bottom Up

2007-06-23 06:31 by Jeffrey Zhao, 2450 阅读, 收藏, 编辑
摘要: http://media.joyent.com/JHoffmanRailsConf-May2007.pdf 这是今年Rails大会上的一个报告。虽然讲的是RoR应用程序,但实际该报告里包括了许多其他方面要素的阐述,例如操作系统,硬件配置等等。对于要构造大型网络应用的人来说是一个不可不读的文档。阅读全文

80+ AJAX-Solutions For Professional Coding

2007-06-22 13:33 by Jeffrey Zhao, 3472 阅读, 收藏, 编辑
摘要: http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding 非常好的AJAX资源,喜欢看示例的朋友有福了。如果能够没有障碍地完成这些内容,其AJAX能力基本上可以算是一流了。阅读全文

上海激动通信有限公司招聘优秀.NET开发人员

2007-06-18 12:18 by Jeffrey Zhao, 4859 阅读, 收藏, 编辑
摘要: 上海激动通信有限公司(以下简称“激动通信”)是激动集团股份有限公司(以下简称“激动集团”)的全资子公司,公司注册资金1000万元。激动通信是一家主要从事无线增值服务的高新技术企业,公司建立激动网www.megajoy.com,作为无线增值服务的支持平台,激动通信的目标是充分整合各种优势资源,打造全国性休闲、时尚大型娱乐服务平台,为媒体及各行业提供全面互动解决方案,在互联网和无线增值服务领域展现卓越...阅读全文

StyledAutoComplete - 支持丰富样式的自动补全

2007-06-12 18:15 by Jeffrey Zhao, 6896 阅读, 收藏, 编辑
摘要: 几个月前,我扩展了Atlas CTP时期的的AutoCompleteBehavior,到了ASP.NET AJAX正式版之后这个扩展自然就不能用了。其实这段时间内有不少朋友问我该如何做到像Google Suggest那样带丰富样式的自动补全功能,但是由于各种原因,我没有深入地研究它,更别提对它的扩展了。最近手头正好有些时间,也就逼迫自己耐着性子读了读AutoCompleteBehavior的代码,并作了这个扩展。阅读全文

BlogEngine 1.0中的编码问题及解决方案

2007-06-06 22:03 by Jeffrey Zhao, 6006 阅读, 收藏, 编辑
摘要: 似乎有不少朋友在下在BlogEngine 1.0的源代码之后会发现居然无法正确编译,因为{SiteRoot}\User Controls\CommentView.cs里的代码遇到了错误。为什么引号没有封闭?作者怎么会把一个无法编译的版本发布出去呢?其实问题并非那么简单……阅读全文

深入JavaScript与.NET Framework中的日期时间(3):JavaScript中的Date类型(中)

2007-06-06 17:29 by Jeffrey Zhao, 7266 阅读, 收藏, 编辑
摘要: 本文详细讲解了JavaScript中Date对象的以下几个方面:

浏览器默认格式字符串
解析时间日期字符串
系统设定时间日期字符串
如何在实际开发中使用客户端系统的格式阅读全文

深入JavaScript与.NET Framework中的日期时间(2):JavaScript中的Date类型(上)

2007-06-06 14:02 by Jeffrey Zhao, 4907 阅读, 收藏, 编辑
摘要: 在JavaScript中处理时间使用的就是Date原生类型了,这也是在使用JavaScript进行开发时最常用的对象之一。本文讲述了关于JavaScript中Date类型的以下部分内容:

概念
Date函数
Date对象的构造阅读全文

分清ASP.NET AJAX中的Extender和Behavior模型

2007-06-04 13:32 by Jeffrey Zhao, 7276 阅读, 收藏, 编辑
摘要: ASP.NET AJAX提出了多种模型,在客户端有Component、Control和Behavior模型,在服务器端有ScirptControl和Extender模型。这些模型各有各的用途,但是请注意非常重要的一点:客户端模型和服务器端模型是相互独立的。我们必须意识到以下三点,才能灵活地使用Extender和Behavior。

Extender模型和Behavior模型没有必然联系。
Behavior可以独立于Extender执行。
所有效果是由Behavior提供的。阅读全文

离开了博客园一个半月,终于可以回来了

2007-06-03 07:10 by Jeffrey Zhao, 2849 阅读, 收藏, 编辑
摘要: 这一个半月中,因为毕业设计和工作方面的原因,我没有办法照顾到自己的技术博客,每天只能简单回答一些问题等等,都没有仔细去看大家发来的示例,也没有自己研究一些问题,在这里先向大家致歉。不过现在差不多结束了,又有时间更新博客了,希望自己能够写出更多更好的东西和大家一起分享。阅读全文
使用Live Messenger联系我