摘要:
在阅读很多朋友问题的过程中,以及平时和别人讨论中,亦或是园子里的文章中经常发现一些误用概念的情况。如果在概念上没有形成共识,那么在工作和交流上就会造成许多问题。因此,老赵已觉得有必要特地来澄清一些概念,解释一下这些概念之间的区别和联系。希望在明确这些概念之后,大家能够把注意力集中在对于具体问题的分析解决上,而不要让沟通成为瓶颈。
在这篇文章中,我希望澄清三组概念,它们是:
AJAX / AJAX框架 / AJAX.NET (Professional) / ASP.NET AJAX
LINQ / LINQ to SQL / LINQ to XXX
Lambda Expression / Expression Tree / 匿名方法 阅读全文
随笔分类 - 02. ASP.NET
更新:让UpdatePanel支持上传文件
2008-05-04 08:57 by Jeffrey Zhao, 37117 阅读, 收藏, 编辑
摘要:
在一年多前我发布了一系列文章(让UpdatePanel支持文件上传(1)、(2)、(3)、(4)、(5)),设法让UpdatePanel支持上传文件。可惜缺陷无数,当时收到了无数bug report但是我都没有时间(和兴趣)去解决,因此只是一个实验品中的实验品。这个组件还有一个问题就在于非常复杂,复杂的原因是为了解决iframe传输数据的问题。当时想了很多办法最终让IE6、7,FireFox 1.5支持了这个组件,但是对于Safari,Opera等浏览器就无能为力了。最近发现jQuery的Form插件能够在一定程度上支持我需要的功能,于是就有了简化并改进该控件的想法。虽然后来发现jQuery在这方面的表现并不如我想象中那么好…… 阅读全文
不妨来做个尝试:UpdatePanel for ASP.NET MVC
2008-04-27 23:59 by Jeffrey Zhao, 34161 阅读, 收藏, 编辑
摘要:
前一段时间尝试为ASP.NET MVC构建了一个类似于UpdatePanel的AJAX解决方案,本文叙述了这个组件的设计思路以及使用方式,并提供了源代码以及示例程序。 阅读全文
MIX 2008与ASP.NET MVC框架的Road-Map
2008-02-13 17:38 by Jeffrey Zhao, 22651 阅读, 收藏, 编辑
摘要:
ScottGu同学最近在Blog上发布了一些有关MIX 2008和ASP.NET MVC框架的消息。 阅读全文
随便说说:在ASP.NET应用程序中上传文件
2008-02-12 17:25 by Jeffrey Zhao, 38543 阅读, 收藏, 编辑
摘要:
在Web程序中上传文件是很常见的需求,最近忽然想到了点这方面的内容,就随便谈谈吧,希望对大家有帮助。 阅读全文
明日讲座主题:ASP.NET WebForms、MVC与MVP的演变与结合
2008-01-26 15:51 by Jeffrey Zhao, 13617 阅读, 收藏, 编辑
摘要:
明日博客园上海俱乐部活动,老赵有幸受邀与大家一起讨论一下ASP.NET方面的问题。经过了一段时间的思考,我准备这次的主题定为“ASP.NET WebForms、MVC与MVP的演变与结合”。 阅读全文
重提URL Rewrite(4):不同级别URL Rewrite的一些细节与特点
2008-01-13 16:35 by Jeffrey Zhao, 19843 阅读, 收藏, 编辑
摘要:
在之前的文章里我们已经谈论了有关URL Rewrite的几个主要的方面。在本系列的最后一篇文章中,我们就来讨论一下有关不同级别URL Rewrite的一些细节与特点。 阅读全文
重提URL Rewrite(3):在URL Rewrite后保持PostBack地址
2008-01-13 03:17 by Jeffrey Zhao, 20541 阅读, 收藏, 编辑
摘要:
在进行了URL Rewrite之后,经常会遇到的问题就是页面中PostBack的目标地址并非客户端请求的地址,而是URL Rewrite之后的地址,这就将我们服务器端的URL映射规则暴露给了客户端,甚至会引起应用程序错误。这无疑不是我们所希望的,那么我们该如何避免这个情况发生呢?本文就不同层面的URL Rewrite方式分别讨论了这个问题。 阅读全文
重提URL Rewrite(2):使用已有组件进行URL Rewrite
2008-01-13 00:27 by Jeffrey Zhao, 27427 阅读, 收藏, 编辑
摘要:
可能已经没有人会使用上一篇文章中的方法进行URL Rewrite了,因为提供URL Rewrite的组件早已铺天盖地了。如果要我推荐,我指挥推荐两款组件,那就是Intelligencia的开源组件UrlRewriter.NET和IIRF,它们分别在ASP.NET层面和IIS层面上进行URL重写。 阅读全文
重提URL Rewrite(1):IIS与ASP.NET
2008-01-12 19:52 by Jeffrey Zhao, 26157 阅读, 收藏, 编辑
摘要:
之前觉得这个话题已经被谈滥了。URL Rewrite早已经被广大开发人员所接受,网上关于URL Rewrite的组件和文章也层出不穷,但是总是让我感觉意犹未尽,于是最终还是忍不住提笔写了这系列文章。这些文章不会谈论URL Rewrite的价值与意义,而只会谈论纯技术的内容。文章中也不会有详尽地实现分析,而是结合了我的经验,从应用角度来讲解这个话题。您已经知道的,您还不知道的,别处已经讲过的,或者还没有讲过的,希望这系列文章的“旧事重提”不会让您觉得沉闷,并且能让您了解ASP.NET中URL Rewrite的方方面面。如果您以后再遇到URL Rewrite方面的问题是能够想到这几篇文章,估计我做梦也会笑出声来。 阅读全文
技巧:使用User Control做HTML生成
2007-12-30 23:06 by Jeffrey Zhao, 24902 阅读, 收藏, 编辑
摘要:
User Control大家肯定不会陌生,在使用ASP.NET的过程中,除了aspx页面,最常见的就莫过于ascx了。ascx是一个有独立逻辑的组件,提供了强大的复用特性,合理使用,能够大大提高开发效率。通过User Control直接生成HTML内容其实已经是一个比较常用的技巧了(尤其在AJAX时代),不过网络上这方面的内容比较少,很多人还是在苦苦地拼接字符串,因此在这里我通过一个实例简单介绍一下这个技巧。 阅读全文
为WebForms说几句话,以及一些ASP.NET开发上的经验(3)
2007-12-23 18:44 by Jeffrey Zhao, 14125 阅读, 收藏, 编辑
摘要:
有人说,客户端ID污染问题使脚本代码很难做到“内聚”。可能他的意思是将脚本代码提取到js文件中吧。但是我认为,这种污染“迫使”我们必须使用内聚性高的方式进行客户端开发。
这也算是一种因祸得福吧。 阅读全文
为WebForms说几句话,以及一些ASP.NET开发上的经验(2)
2007-12-22 22:41 by Jeffrey Zhao, 15829 阅读, 收藏, 编辑
摘要:
在ASP.NET的WebForms刚出现时,各种“演示”看上去真的很美。这个特点微软至今还保留着,各微软技术大会上的演示真的让人感到心潮澎湃。在我看来,那些“激素大会”更是一种推广策略,而并没有将目光集中在技术细节的本身。所以微软的东西似乎总是有入门容易提高难的“毛病”。开发人员被“宠坏”了,上一篇文章中有位朋友说这就是“穷人的孩子早当家”,还是有一定道理的。在.NET环境下我们就像是官宦子弟,不过这并不能成为我们习惯于“吃喝嫖赌”的理由。我们要合理利用富裕的环境带给我们的资源,但是要适当地抛弃一些不好的东西。 阅读全文
为WebForms说几句话,以及一些ASP.NET开发上的经验(1)
2007-12-22 02:22 by Jeffrey Zhao, 24535 阅读, 收藏, 编辑
摘要:
我还是想写这篇文章,我只会WebForms平反,而不会“贬低”MVC框架;我只是想证明WebForms的那些缺点到底真的是缺点,还是开发人员自身没有好好利用起这把利器。因此我将会根据我的经验,一一回应对WebForms比较常见的指责。如果措辞上有任何的不妥,也请大家多多包涵。 阅读全文
客户端访问Web Service方法的一个细节
2007-07-23 22:02 by Jeffrey Zhao, 13573 阅读, 收藏, 编辑
摘要:
之前遇到一个要求,需要能够取消一个正在进行中的Web Service。这也是我第一次遇到这个功能,不过不难,我想。既然ASP.NET AJAX的客户端与服务器端通信完全通过Microsoft AJAX Library的异步通信层进行,那么我们只要得到正在请求Web Service的Sys.Net.WebRequest对象,调用其abort方法就可以了。但是究竟应该如何得到这个对象呢?其中似乎还有这么一些问题…… 阅读全文
Tip:在使用AjaxControlTookit的控件时响应事件
2007-07-11 22:31 by Jeffrey Zhao, 8359 阅读, 收藏, 编辑
摘要:
AjaxControlTookit中控件的关键在于客户端的Behavior对象,Behavior对象大都有丰富的属性,方法和事件。在目前的版本中,为某些Behavior添加Event Handler并非一件很容易的事情。相信今后的AjaxControlToolkit版本中将会为一些较早的Extender补充对于客户端事件的支持,让我们拭目以待吧,只是眼下我们还需要使用一些较为有技巧的方式来实现功能了。 阅读全文
使用ASP.NET AJAX访问Script Method时启用客户端缓存
2007-07-02 12:31 by Jeffrey Zhao, 7114 阅读, 收藏, 编辑
摘要:
缓存是开发高性能和高可用性Web应用的重要手段之一。作为ASP.NET AJAX的关键功能,从客户端访问Script Method会被大量用于使用ASP.NET开发的AJAX应用。这个功能有一个内置的服务器端缓存机制,不过如果我们能在客户端进行缓存则会得到更好的效果。 阅读全文
ScriptPath属性的拙劣设计
2007-06-25 20:45 by Jeffrey Zhao, 5829 阅读, 收藏, 编辑
摘要:
您在为AjaxControlTookit开发Extender控件时使用ScriptPath属性吗?ScriptPath属性的拙劣设计几乎使它成为了ExtenderControlBase类中最没有用的属性了。 阅读全文
StyledAutoComplete - 支持丰富样式的自动补全
2007-06-12 18:15 by Jeffrey Zhao, 7592 阅读, 收藏, 编辑
摘要:
几个月前,我扩展了Atlas CTP时期的的AutoCompleteBehavior,到了ASP.NET AJAX正式版之后这个扩展自然就不能用了。其实这段时间内有不少朋友问我该如何做到像Google Suggest那样带丰富样式的自动补全功能,但是由于各种原因,我没有深入地研究它,更别提对它的扩展了。最近手头正好有些时间,也就逼迫自己耐着性子读了读AutoCompleteBehavior的代码,并作了这个扩展。 阅读全文
BlogEngine 1.0中的编码问题及解决方案
2007-06-06 22:03 by Jeffrey Zhao, 6356 阅读, 收藏, 编辑
摘要:
似乎有不少朋友在下在BlogEngine 1.0的源代码之后会发现居然无法正确编译,因为{SiteRoot}\User Controls\CommentView.cs里的代码遇到了错误。为什么引号没有封闭?作者怎么会把一个无法编译的版本发布出去呢?其实问题并非那么简单…… 阅读全文