随笔-312  评论-11886  文章-2  trackbacks-221

 

摘要

本期共有9篇文章:

  1. 强大且免费的ASP.NET重构工具
  2. 使用ASP.NET异步编程模型创建可扩展的应用程序
  3. UpdatePanel的技巧和诀窍
  4. 能力和激情,二者相同么?
  5. Silverlight ASP.NET控件:异步文件上传
  6. 教程:在Community Server 中运行ASP.NET应用程序
  7. 使用ASP.NET 2.0 Provider架构管理ViewState
  8. ASP.NET开发者应该了解哪些JavaScript知识
  9. .NET幽默

 

[1] Powerful/Free Download: Refactor! for ASP.NET 2.2 (强大且免费的ASP.NET重构工具)

开发人员的创意绝对是无限的,加上重构在当前软件开发流程中如此重要的地位,这款强大且免费的ASP.NET重构工具一定会给你的ASP.NET开发带来不小的帮助。废话少说,看看几张Cool图吧:

用UpdatePanel将选中内容包围:

移动到代码文件中:

抽取样式信息至CSS Class:

 

[2] Scalable Apps with Asynchronous Programming in ASP.NET (使用ASP.NET异步编程模型创建可扩展的应用程序)

这是MSDN Magazine上的一篇文章,作者是大名鼎鼎的Jeff Prosise。本文首先介绍了ASP.NET 2.0中新引入的内建异步页面模型,即通过这个模型,程序在运行时可以节省大量被block的线程:

Figure 1 asynchronous pages at work

随后作者又分别介绍了异步HTTP Handler和异步HTTP Module这两个同样是ASP.NET中非常有用,但却鲜为人知的特性。文章不是很深入,不过起到让朋友们了解的作用已经足够了。

 

[3] UpdatePanel Tips and Tricks (UpdatePanel的技巧和诀窍)

同样是一篇MSDN Magazine文章,也同样出自Jeff Prosise。不过谈到UpdatePanel,这篇文章却并不是那么的深入。但技术是给人用的,是用来提高生产率,而不是用来毫无疑义地花费时间“钻研”的,了解了这些内容之后,在一般的开发场景中已经足够了。

  1. Update Highlighting
  2. Canceling UpdatePanel Updates
  3. Multiple UpdatePanels
  4. Updates without UpdatePanels
  5. Web Service != SOAP and XML

 

[4] Skills versus Passion, are they the same? (能力和激情,二者相同么?)

需要抱歉地事先说一声,这是一篇“跑题”文章,无关任何ASP.NET的东西。

本文主要针对的是开发过程中“只要完成任务,实现功能,怎么写代码都无所谓”这个问题展开。“黑猫白猫,抓到耗子就是好猫”,说得不错,不过有时候是不是应该稍微注意一些呢?

这段代码:

try
{
   myValue = Convert.ToString(Context.Session["objectId"]);
}
catch
{
   myValue = "0";
}

与这一段:

if (!String.IsNullOrEmpty(Context.Session["objectId"].ToString()))
    _success = int.TryParse(Context.Session["objectId"].ToString(), out myValue);
else
    myValue = 0;

还是有不少的区别吧……

 

[5] Silverlight ASP.NET control: AsyncFileUpload (Silverlight ASP.NET控件:异步文件上传)

Silverlight 如火如荼,虽然前途未卜(Dflying个人想法,不要骂我),但还是有一大批的支持者。作者用Silverlight开发了一个ASP.NET中异步文件上传的控件,似乎看起来很不错。不过在Flash中早已经有了类似的实现,仍旧脱离不了在浏览器中安装插件的需求。

个人认为,这个异步文件上传控件的宣传价值远远胜于其使用价值——有了该控件,不过是要说明“Flash能办到的,我们Silverlight 也没问题”。孰是孰非,各位自行评判吧,不过有需要开发相关控件的朋友可以参考一下。相关的文章还有这一篇《How to Construct a Reusable Silverlight ASP.NET User Control》。

 

[6] Tutorial: Running ASP.NET applications under Community Server (教程:在Community Server 中运行ASP.NET应用程序)

Community Server功能强大,不过再强大的东西总归不能满足所有人的所有需求。这些需求中很常见的一个就是,如何将Community Server与现有的ASP.NET应用程序集成起来。

本文就简要介绍了这个集成的方法,非常具有参考价值。需要的朋友绝对不能错过!

 

[7] Manage ViewState using ASP.NET 2.0 Provider Architecture (使用ASP.NET 2.0 Provider架构管理ViewState)

codeproject网站中的内容总是能够给我们带来很多帮助。这篇文章就介绍了使用ASP.NET 2.0 Provider架构管理ViewState的方法,其中可以看到ASP.NET 2.0所提供的良好的可扩展性,以及这种可扩展性给我们定制应用程序所带来的极大便利。

关于ASP.NET 2.0的Provider架构,还可以看看这片文章《Introduction to the Provider Model》。

 

[8] What ASP.NET Developers Should Know About JavaScript (ASP.NET开发者应该了解哪些JavaScript知识)

虽然ASP.NET在设计时就是为了让开发者尽量不去管任何客户端的东西,不过随着Ajax越来越火爆,JavaScript也变得越来越重要……这篇文章就针对这类不是很了解JavaScript的ASP.NET开发者而专门打造的。其中给出了大量的示例代码,均非常简单也非常有用。

无论想不想使用Ajax(及其背后的JavaScript),作为ASP.NET开发者的你都应该通读一遍这篇文章。强烈推荐!

 

[9] .NET Humor (.NET幽默)

又是一篇无关的“跑题”文章,但却非常的有趣。TheServerSide.NET的编辑搞出了一个比较有意思的.NET幽默文章列表,有兴趣的朋友不妨看看:

  1. Top 10 Things to be Thankful for in .NET
  2. Web Services are Taking Over The World
  3. The Joys of Test Driven Development
  4. Tragedy on the Information Superhighway
  5. SOA - The Only Tool You'll Ever Need
  6. Unraveling the Mystery of the CTPs
  7. High Anxiety
  8. The Unusual Suspects - Reformed
  9. You Might Be A .NET Geek If...
  10. Top 10 Names NOT Chosen For Windows Vista
  11. MSDN Subscription Pricing - Decisions, Decisions
  12. BizTalk Server 2006 Blasts Off... Sorta
posted on 2007-05-12 10:25 Dflying Chen 阅读(5427) 评论(28)  编辑 收藏 所属分类: ASP.NET英文技术文章推荐

评论:
#1楼  2007-05-12 11:50 | Wuya      
[8] What ASP.NET Developers Should Know About JavaScript (ASP.NET开发者应该了解哪些JavaScript知识)

这篇文章在msdn中有一篇类似的文章,并且还有中文版本,
名为:《使用面向对象的技术创建高级 Web 应用程序》
地址是:http://msdn.microsoft.com/msdnmag/issues/07/05/javascript/default.aspx?loc=zh

  回复  引用  查看    
#2楼  2007-05-12 12:00 | Phinecos(洞庭散人)      
JavaScript真让人头痛
  回复  引用  查看    
#3楼  2007-05-12 12:06 | 木野狐      
第一个重构工具好像很早之前看到 demo 了,不记得谁介绍的。
  回复  引用  查看    
#4楼 [楼主] 2007-05-12 12:43 | Dflying Chen      
@Wuya
呵呵,我还没注意到,确实不错
  回复  引用  查看    
#5楼 [楼主] 2007-05-12 12:44 | Dflying Chen      
@Phinecos(洞庭散人)
等Orcas出来了就好了
  回复  引用  查看    
#6楼 [楼主] 2007-05-12 12:44 | Dflying Chen      
@木野狐
第一个的界面做得非常不错啊
  回复  引用  查看    
#7楼  2007-05-12 13:36 | Jeffrey Zhao      
我一直认为的是,程序不光能够工作,写程序是在完成艺术品。
  回复  引用  查看    
#8楼  2007-05-12 14:04 | axii      
Tutorial: Running ASP.NET applications under Community Server

对这个比较感兴趣,刚才赶紧依照原文做了个Demo,可以没有成功!总是显示的匿名用户,不能获取CS系统中已经登陆用户的用户名信息。

不知还有谁也看了此文并动手实验?
  回复  引用  查看    
#9楼  2007-05-12 15:08 | Jeffrey Zhao      
那个,ViewStateProvider其实有些假。
可以看到,因为Page模型没有提出原生的支持,所以最终还是需要在Page的LoadPageStateFromPersistenceMedium和SavePageStateToPersistenceMedium两个方法上做手脚。因此这里的Provider其实只是个Helper Class。
  回复  引用  查看    
#10楼  2007-05-12 16:02 | Jeffrey Zhao      
其实.NET Humor里面有些观点是夸张的,比如TDD做法,不过可能这就是外国人的幽默(讽刺?)所在,呵呵。
  回复  引用  查看    
#11楼  2007-05-12 17:22 | Anthan      
第一个工具有用过啊,不过好像和VS2005有点冲突,后来卸掉了,不知道是我没有用好还是我的2005有问题,呵呵。
  回复  引用  查看    
#12楼 [楼主] 2007-05-12 18:49 | Dflying Chen      
@Jeffrey Zhao
不是所有人都有你那样的能力、资本、时间、兴趣或热情的。当程序成了职业,也无外乎是谋生的手段而已。
  回复  引用  查看    
#13楼 [楼主] 2007-05-12 18:49 | Dflying Chen      
@axii
没用过,呵呵
  回复  引用  查看    
#14楼 [楼主] 2007-05-12 18:50 | Dflying Chen      
@Anthan
现在这个版本应该没问题了吧
  回复  引用  查看    
#15楼 [楼主] 2007-05-12 18:50 | Dflying Chen      
@Jeffrey Zhao
ViewStateProvider没仔细看,呵呵
幽默那个挺好的啊,都挺中要害的
  回复  引用  查看    
#16楼  2007-05-12 20:50 | Jeffrey Zhao      
@Dflying Chen
这样往往就很难做好,其实很多东西都有良性或恶性的循环……
  回复  引用  查看    
#17楼  2007-05-13 01:38 | Artech      
现在的新东西出的太快,让人觉得无所适从。
现在感觉对于新技术的追逐不象原来那样有激情了:)

我现在开始读“历史书”了。

  回复  引用  查看    
#18楼  2007-05-13 09:36 | 幻想曲 [未注册用户]
第一个安装后,没有出现图上所说的菜单选项
  回复  引用    
#19楼  2007-05-13 13:04 | 小鬼 [未注册用户]
好文,谢谢您的辛勤给我们带来的幸福.
  回复  引用    
#20楼 [楼主] 2007-05-13 15:05 | Dflying Chen      
@Jeffrey Zhao
从自己做起吧,但是别对个人的能力抱有太大的期望,呵呵
  回复  引用  查看    
#21楼 [楼主] 2007-05-13 15:06 | Dflying Chen      
@Artech
充分同意这一点!这一行似乎就是这样,能怎么办呢?
  回复  引用  查看    
#22楼 [楼主] 2007-05-13 15:06 | Dflying Chen      
@小鬼
谢谢支持!希望这次的推荐能让你满意!
  回复  引用  查看    
#23楼  2007-05-13 21:39 | Cat Chen      
4.这本身就是有问题的:
if (!String.IsNullOrEmpty(Context.Session["objectId"].ToString())) {}
假如Session["objectId"]为null,那么ToString()就已经出错,因此常识性可以判断ToString()的结果一定不是null,那么他用String.IsNullOrEmpty就显得有点多余了,因为只可能是Empty。当然,也可能Session["objectId"]是一个特殊的Object,此Object设计为某些情况下ToString()返回null,不过这看起来不是一个好设计哦。
  回复  引用  查看    
#24楼  2007-05-15 03:50 | deerchao      
@Cat Chen
返回String.Empty而不是null是一条公认的.net开发规范吗?
好像我的代码里都是顺手写个null,因为少几个字符。
  回复  引用  查看    
#25楼 [楼主] 2007-05-15 09:10 | Dflying Chen      
@Cat Chen
呵呵,确实如此啊
  回复  引用  查看    
#26楼 [楼主] 2007-05-15 09:10 | Dflying Chen      
@deerchao
似乎没有这一条吧?
  回复  引用  查看    

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      


相关链接: