本周ASP.NET英文技术文章推荐[12/17 - 12/23]
摘要
本期共有7篇文章:
- JavaScript脚本和LINQ?
- Visual Studio 2005 SP1发布——Web相关的改进
- 小技巧:使用Visual Studio 2005 SP1的本地Web Server时如何将站点置于根目录下
- ASP.NET AJAX 1.0 RC发布
- ASP.NET Menu控件的6个小小使用技巧
- 理解.NET中的数据库连接池
- IIS7一瞥
[1] Script and LINQ? (JavaScript脚本和LINQ?)
Nikhil Kothari的新主意真是不少,架构师的头衔果然名不虚传。这两天他又搞出了一套新东西,将LINQ的语法引入到了JavaScript中(闭上你吃惊的大嘴,接着看吧)。这个JavaScript版本的LINQ功能还算非常全面,支持filter、map、groupBy、sort、aggregate、extract、index、foreach……
例如如下的C# LINQ代码:
var data =
(from location in allLocations
group location by location.Country into locationGrouping
select new {
Country = locationGrouping.Key,
Cities = from location in locationGrouping select location.City,
TotalDistance = locationGrouping.Sum(location => location.Distance)
})
.OrderByDescending(locationGroup => locationGroup.TotalDistance)
.Take(2);
ObjectDumper.Write(data, 2);
将输出:
Country=USA Cities=... TotalDistance=10561
Cities: Boston
Cities: San Francisco
Cities: Las Vegas
Cities: Raleigh
Cities: Chicago
Cities: Charleston
Country=France Cities=... TotalDistance=5428
Cities: Nice
而在Nikhil的“JavaScript LINQ”中,我们可以这样写:
var data =
allLocations
.groupBy(function(location) {
return location.Country;
})
.map(function(locationGrouping) {
return {
Country: locationGrouping.key,
Cities: locationGrouping.map(function(location) {
return location.City;
}),
TotalDistance:
locationGrouping.aggregate(0, function(sum, location) {
return sum + location.Distance;
})
};
})
.sort(function(group1, group2) {
return group2.TotalDistance - group1.TotalDistance;
})
.extract(0, 2);
Debug.dump(data);
将得到这样的输出:
Array: {Array}
[0]: {Object}
Country: USA
Cities: {Array}
[0]: Boston
[1]: San Francisco
[2]: Las Vegas
[3]: Raleigh
[4]: Chicago
[5]: Charleston
TotalDistance: 10561
[1]: {Object}
Country: France
Cities: {Array}
[0]: Nice
TotalDistance: 5428
不过要是集成在Script#中,那就好了。(还是忍不住要赞叹一下,牛人就是牛人啊!)
[2] Visual Studio 2005 SP1 released - details about changes for web tools (Visual Studio 2005 SP1发布——Web相关的改进)
无论如何,Visual Studio 2005 SP1的发布总归是一件大事,对于ASP.NET等Web相关的改进也有不少。本文就详细介绍了这些改进,非常值得我们了解。
我个人认为其中比较爽的有两点:
- 添加了对Web Application Projects的支持
- 添加了对ASP.NET AJAX的支持(主要以修复Bug为主……)
[3] Tip/Trick: How to Run a Root “/” Site with the Local Web Server using VS 2005 SP1 (小技巧:使用Visual Studio 2005 SP1的本地Web Server时如何将站点置于根目录下)
Visual Studio 2005中自带的那个小Web Server想必大家都非常熟悉,也为我们在开发ASP.NET应用程序时帮了不少忙,不用每次都劳IIS的大驾了。按照默认设置,这个Web Server会将网站部署到一个子目录中,例如http://localhost:1234/mywebsite/这样的。但在开发完毕之后,很多情况下我们都是将其部署到诸如http://www.mywebsite.com/ 这样的环境中,这也就造成了开发环境和运行环境在文件路径上的不匹配,可能会导致一系列的Bug发生。
Scott在这里介绍了一个方法,可以让这个自带的Web Server也使用根目录,其实只有一个设定而已:
[4] ASP.NET AJAX 1.0 Release Candidate Now Available (ASP.NET AJAX 1.0 RC发布)
Scott再接再厉,又发出了这个比较震撼的消息。RC已经到了,正式版本还会远么?本文列举了RC的一些变化信息,关注的朋友应该看看。
(回想起即将过去的2006年,基本上我都是在和Atlas“战斗”着……心中万般感悟,写出来却也无非无病呻吟而已。不管怎样,祝愿Atlas一路走好……)
[5] 6 Tweaks for your ASP:Menu Control (ASP.NET Menu控件的6个小小使用技巧)
ASP.NET的Menu控件功能强大,这句话同样的意思就是:ASP.NET的Menu控件比较难以使用……
这篇文章中,作者根据实际开发中遇到的问题总结出了ASP.NET Menu控件的6个使用技巧,而非MSDN一般的照本宣科。个人认为,这才是Blog以及技术图书的价值所在!抄文档的书还是不要写了,否则我们还要什么小说,一本《新华字典》(如果不够,还可以看《康熙字典》)不就够了?
[6] Understanding Connection Pooling in .NET (理解.NET中的数据库连接池)
一片基础入门的理论性文章,主要介绍.NET中的数据库连接池的概念,及其使用方法。尚不了解或者对此还“无意识”的朋友可以参考一下。
[7] A Quick Look at IIS 7 (IIS7一瞥)
IIS7是个新东西,与他的前辈IIS比起来,改进还是不小的。虽然很多朋友暂时还不会用到IIS7,但这篇文章中介绍的IIS7的一些新特性,还是非常值得扫一眼的——了解最新的技术动向,同时也好判断何时应该迁移到其上。