RSS 2.0 Feed
2006-09 Entries
摘要: 前几天,微软产品部主管Somasegar宣布推出Visual Studio 2005 SP1 Beta的同时,也宣布了在Vista上不支持Visual Studio .NET 2002或Visual Studio .NET 2003开发平台, "....However, we will not support Visual Studio .NET 2002 or Visual Studio .NET 2003 as development environments on Windows Vista...." (详见 http://blogs.msdn.com/somasegar/archive/2006/09/26/772250.aspx) 在.NET开发人员中引起了轩然大波,譬如,Frans Bouma问道, "So, VB6 is more important than VS.NET 2003 I suppose? " (详见 http://weblogs.asp.net/fbouma/archive/2006/09/27/So_2C00_-VB6-is-more-important-than-VS.NET-2003-I-suppose_3F00_.aspx) Paul Wilson则建议微软推迟发行Vista,否则要号召大家抵制Vista, "...So either MS should delay Vista until its really ready and useful for more than generating income, or we developers need to tell everyone to ignore Vista since its clearly not ready." (详见 http://weblogs.asp.net/pwilson/archive/2006/09/27/Vista-will-NOT-support-Developers.aspx ) Scott Guthrie 解释了技术层面的原因,(VS 2003 基本还是工作的,只是在一些情形下不工作,因为Vista中的安全措施以及对进程/内存的控制影响了VS debugger,建议在VPC/VM里使用VS 2003) "...The big technical challenge is with enabling scenarios like......[阅读全文]

posted @ | Feedback (15) | Filed Under [ .NET ]

摘要:1。ADO.NET产品组推出实体数据模型设计器原型 ADO.NET vNext: Entity Data Model (EDM) Designer Prototypehttp://blogs.msdn.com/adonet/archive/2006/09/27/ADONET_vNext_EDM_Designer.aspx 下载处:ADO.NET vNext Entity Data Model Designer Prototype, CTPhttp://www.microsoft.com/downloads/details.aspx?FamilyID=74bda7b2-9ca9-4eea-a33f-31942ddc9dbe&displaylang=en 2。Windows Live Writer产品组推出Windows Live Writer更新版本 New Release! Windows Live Writer 1.0 (Beta) Update with Windows Live Galleryhttp://windowslivewriter.spaces.live.com/blog/cns!D85741BB5E0BE8AA!702.entry?_c11_blogpart_blogpart=blogview&_c=blogpart#permalink 下载处:http://g.msn.com/8SEENUS030000TBR/WriterMSI...[阅读全文]

posted @ | Feedback (0) | Filed Under [ .NET ]

摘要:关于视图状态(ViewState)/动态控件的问题时不时在论坛上出现,再看看答复,发现真正理解视图状态/动态控件的好像也不是很多,这是非常不幸的。 最近看到Dave Reed写的几篇相关的帖子,非常精彩,强烈推荐如下: 真正理解视图状态 TRULY Understanding ViewStatehttp://weblogs.asp.net/infinitiesloop/archive/2006/08/03/Truly-Understanding-Viewstate.aspx 真正理解动态控件(一) TRULY Understanding Dynamic Controls (Part 1)http://weblogs.asp.net/infinitiesloop/archive/2006/08/25/TRULY-Understanding-Dynamic-Controls-_2800_Part-1_2900_.aspx 真正理解动态控件(二) TRULY Understanding Dynamic Controls (Part 2)http://weblogs.asp.net/infinitiesloop/archive/2006/08/30/TRULY-Understanding-Dynamic-Controls-_2800_Part-2_2900_.aspx   阅读完这几个帖子后,你对ASP.NET的总体了解也会更深入一些。...[阅读全文]

posted @ | Feedback (9) | Filed Under [ ASP.NET/IIS ]

摘要:微软平台和服务部总裁Jim Allchin发表了给开发人员的题为《Windows Vista: Now is the Time!》的公开信,鼓励开发人员为Windows Vista开发程序,草译如下: Windows Vista的时刻已经来临 ! 你准备好了迎接Windows Vista的来临么?我们知道,这个世界已经准备好了。除非出现像有关数据损坏(data corruption),恢复(resiliency),或安全方面的缺陷等无法预料的质量问题,我们会按原计划在今年晚些时候推出Windows Vista商业版,在明年一月份推出消费者版本。你们中间开始使用RC1 版的人,可以看到,产品已是如何地稳定。我们非常接近大功告成了。 Windows Vista给开发人员新的机遇,其规模之大,是自Windows 95以来所未见过的。业界分析人士预计在产品推出后的前24月内,大概2亿人将开始使用Windows Vista。我们在飞快地逼近产品推出的时刻,数以百万计的人们将开始寻找各种应用程序。人们将对新颖,引人注目和“酷”的程序趋之若骛。你一定得抓住这机遇。我们在Windows Vista 中对 .NET 框架 3.0 和传统的Win32 API投资甚巨。使用Visual Studio,你将能创建视觉上美轮美奂,互联的,允许工作流的,和安全的应用程序。你可以先预览一下Visual Studio下一个版本中的一些特性,这些特性将使得Windows Vista的开发更强有力。微软新的Expression 系列产品将使得开发人员和设计师更加容易合作创建很好的Windows体验。 超过一千个公司参加了我们的早期采纳项目,我看到的一些初期作品,让人叹为观止。用户会热爱这些程序,无论它们是新的DX10游戏,还是酷的Sidebar gadgets,还是界面复杂的企业应用。其中一些程序真是难以置信地酷。而且,一些最好的作品是小公司开发出来的,其中很多公司你从未听说过。所以说,改变世界的机遇就在你的眼前。我们建立了一个陈列窗,这样你可以看到你的同行都在做些什么。 你都需要做些什么准备?首先,确认你的应用是兼容的。我们在Windows Vista投入巨资来确保它的向后兼容性。但系统的一些改进,譬如用户访问控制(User Access Control),网络协议层(networking stack) 的变动,以及新的图像模型,也许需要你改变编码。你应该尽量使你的应用能以普通用户的权限来运行。 我们提供了工具来帮助你: 《应用程序兼容集锦(Application Compatibility Cookbook)》将提供给你有关Windows Vista的新功能和它们如何影响现有程序的详细信息。 MSDN上的Windows Vista网站将包括最新的技术资料,以及向你提供即将在全世界范围内举行的产品推出活动的信息。 访问“在Windows Vista 上创新( Innovate on Windows Vista)”门户网站,获取相关的工具,资源和Windows Vista logo标志项目方面的信息。我非常鼓励你申请Windows Vista Logo认证。 如果你有什么问题或疑问,请别迟疑,尽快联系微软办事处,在MSDN论坛上询问,或者直接给我们反馈。 就象我说过的,这个机遇是巨大的。如果你想赶上我们用Vista创造的这波浪潮,最好的方式是,在我们正式推出之时,让你的应用程序一切就绪,而这一时刻即将来到。 谢谢, jim Jim AllchinCo-President, Platforms & ServicesMicrosoft Corporation...[阅读全文]

posted @ | Feedback (8) | Filed Under [ .NET ]

摘要: Zune间的无线共享,三英寸的LCD彩色屏幕,30GB的容量,内置FM调频收音功能。。。 Microsoft Zune Virtual Pressroomhttp://www.microsoft.com/presspass/presskits/zune/default.mspx http://comingzune.com/ Zune Details Revealedhttp://www.zuneinsider.com/2006/09/zune_details_re.html ...[阅读全文]

posted @ | Feedback (13) | Filed Under [ 杂类 ]

摘要:1. CLR Inside Out专栏: IronPython by James Schementihttp://msdn.microsoft.com/msdnmag/issues/06/10/CLRInsideOut/default.aspx 2. Cutting Edge专栏: Simplify task progress with ASP.NET "Atlas" by Dino Espositohttp://msdn.microsoft.com/msdnmag/issues/06/10/CuttingEdge/default.aspx 3. Extreme ASP.NET专栏: Control Adapters by Fritz Onionhttp://msdn.microsoft.com/msdnmag/issues/06/10/ExtremeASPNET/default.aspx   另外,同意John Lam的看法,从Microsoft推出IronPython到Sun雇用JRuby开发人员,动态语言也许迈出了跨越鸿沟(Cross the Chasm),步入主流的重要的一步: "...This is why last week’s announcements by Sun (JRuby), and Microsoft (IronPython 1.0) are so significant. Sure, Python is used a lot by Google, but to most early mainstream business application programmers Google is alien technology that bears no resemblance at all to the applications that they are paid to write. On the other hand, Sun and Microsoft are platform vendors that speak their language. Their explicit......[阅读全文]

posted @ | Feedback (3) |

摘要:[来源:Bertrand Le Roy] 传统的web应用一般含有多个页面,用户在浏览时,浏览器地址框里的地址会随着页面的变动而更新。用户可以bookmark页面把网页地址收藏,之后通过收藏夹里的地址回到同个页面。用户在网站浏览时,也可以使用浏览器的向前/向后按钮来回访问多个网页。 然而,AJAX的web应用存在于单个页面中。用户在操作AJAX应用时,页面的内容会变,但浏览器地址框里的地址是不变的,用户也无法使用向前/向后按钮来往返于当前页面的各个状态。很明显,从表面上看,AJAX应用好像破坏了World Wide Web的规矩 ── 一个URL代表一个资源。虽然,从本质上来说,AJAX应用是个web应用,而不是普通的web文件系统,不支持bookmarking和向前/向后按钮也情有可原。但如果用户的期望有所不同,或者需要对这些中间状态bookmark或者需要能够在这些状态间往返,那么这就是个需要解决的问题。 很明显,要支持bookmarking中间状态,那么AJAX必须能改变这些中间状态对应的浏览器地址框里的地址的值,但又不能改变AJAX应用对应的页面的URL,解决方案是利用客户端的anchor hash ,即在URL上添加或改变#后面的东西。这样, http://www.dogwood.com.cn#abchttp://www.dogwood.com.cn#english 从客户端来看,这是2个可以bookmark的不同的地址,但对服务器来说,却是同样的请求。#是个客户端的东西,在服务器端得不到#后面的值,因为浏览器是不把#后面这部分传回服务器的。 在FireFox里,用脚本改变#后面的值就会往浏览器的历史里添加一项,这样AJAX应用在用户做了什么操作改变页面状态时,如果同时改变这个#值的话,用户就能通过Back Button回到早先的#值。假如这个值足够详细,那么AJAX应用就能凭这个值返回对应这个值的页面状态。当然你需要一个机制来检测当前页面的#值是否改变了,常用的做法是用一个timer来做。可惜,在IE里,光是改变#值是无法生成新的历史项的,解决办法是在页面内嵌一个IFRAME,在用户做了什么操作改变页面状态时,改变这个IFRAME的src属性,这样就能生成一个新的历史项。用户按Back Button时,AJAX应用就可以通过查看这个src属性来返回对应的页面状态。 常见的解决方案都要求你写不少的Javascript,譬如在dojo工具包里 (参考 http://dojotoolkit.org/intro_to_dojo_io.html), var sampleFormNode = document.getElementById("formToSubmit"); dojo.io.bind({url: "http://foo.bar.com/sampleData.js",load: function(type, evaldObj){ // hide the form when we hear back that it submitted successfullysampleFormNode.style.display = "none"},backButton: function(){ //在这里,你处理用户点击Back Button后的情形// ...and then when the user hits "back", re-show the formsampleFormNode.style.display = ""},forwardButton: function(){ //在这里,你处理用户点击Forward Button后的情形// and if they hit "forward" before making another request, this// happens:sampleFormNode.style.display = "none" // we don't re-submit},formNode: sampleFormNode}); 微软ASP.NET产品组的架构师Nikhil Kothari提供了一个服务器端的基于事件的Atlas原型, Back Button Support for Atlas UpdatePanelshttp://www.nikhilk.net/Entry.aspx?id=139 <script runat="server">private void OnContentListSelectedIndexChanged(object sender, EventArgs e) {.....//状态改变,添加历史history.AddEntry(contentList.SelectedIndex.ToString());.....} private void OnHistoryNavigate(object sender, HistoryEventArgs e) {//导航改变,调出数据对应数据.....//更新页面mainUP.Update();listUP.Update();}</script>......[阅读全文]

posted @ | Feedback (9) | Filed Under [ AJAX/ATLAS ]

摘要:在过去的一年内,我读得最多的博客大概就是Scott Guthrie的博客了。在他的博客里,Scott不光提供了很多跟ASP.NET以及.NET方面的产品的信息,而且还写了很多示范ASP.NET特点的教程,也经常提供很多有用的ASP.NET资源的链接。如果你想跟踪ASP.NET产品的动向,或者想深入学习ASP.NET的话,那么Scott Guthrie的博客是不可不读的。 我从Scott的博客学到很多东西,而且我的".NET点滴"贴子也曾无数次地引用了Scott博客里的资源。但Scott是如此多产,有用的信息和资源这么多,有时真想把整个帖子搬抄过来。在跟开心商量过,又得到Scott的允许后,决定在博客堂翻译Scott的博客,以飨ASP.NET开发人员。 Scott Guthrie 博客中文版 http://blog.joycode.com/scottgu/ Scott以前的博客,特别是那些精彩帖子,以后将以档案的方式陆续地翻译出来。当然一个人的力量总归有限,所以如果有人感兴趣想加入翻译队伍的话,请跟我联系。 Enjoy!...[阅读全文]

posted @ | Feedback (28) | Filed Under [ ASP.NET/IIS ]

摘要: [来源:RubyCLR作者John Lam的 Joel Spolsky run over by train. Pictures at 11] Joel Spolsky(周思博)的文章《Language Wars》在永不止息的语言战里又掀起了轩然大波。文章开头说,有朋友问他,如果要从头建立一个基于Web的分布式企业级应用,应该用什么技术?他说,有三个半平台,(C#, Java, PHP各算一个, Python算半个),同样都有望让你成功(there are three and a half platforms (C#, Java, PHP, and a half Python) that are all equally likely to make you successful)。Python算半个,是因为它正处于从有趣的到安全的选择的边界上(Python get a half because it's on the border, about to cross the line from an "interesting" choice to a "safe" choice)。而Ruby虽然是门优美的语言,Ruby on Rails也非常好玩,但无论从经验还是性能,以及应付legacy问题方面,做Serious Business Stuff时,在企业的环境下,假如你想保住饭碗的话,那么ROR大概还不能算是个保险的选择。在C#, Java,PHP, Python间该选择哪个呢?他说这应该取决于你对哪个更熟悉(The only real difference is which one you know better)。他们公司老的编码用的是VBScript,新的编码则用C#。他们有个项目管理系统的产品FogBugz,则是用他们自己开发的一门叫Wasabi的语言写成的,这个语言是Basic语言的一个functional-programming 变种,含有closure, lambda以及类似Rails里active record那样的特性。用这个语言写成的编码可以编译成VBScrip,JavaScript, PHP4 和PHP5,Wasabi编译器本身是用C#写成的。 Ruby On Rails的作者David Heinemeier Hansson认为Joel Spolsky在散布FUD(Fear-恐惧,Uncertainty-不确定,Doubt -怀疑),并以Wasabi的例子反击Joel,认为他嘴上说一套,自己做又一套:“。。。。So Joel and friends invented their own language, which has to reasonably compile to......[阅读全文]

posted @ | Feedback (6) | Filed Under [ 杂类 ]

摘要: [来源:Scott Guthrie]经过JPython作者Jim Hugunin三年的努力,9个Beta之后,.NET平台上的动态语言IronPython 1.0终于发行了!在他的发行说明里,他说他当初写针对CLR的Python时,无非是想臭臭CLR,准备写篇名为"Why the CLR is a terrible platform for dynamic languages"的文章,但在写原型时发现Python在CLR平台上运行性能极佳,居然在很多情形下比C语言的实现CPython还快不少。使用标准的评测benchmark,IronPython居然比CPython快1.7倍!后来他加入了微软,来完成IronPython在CLR上的实现。IronPython是Python的真实实现,与.NET平台之集成天衣无缝。 下载地址 http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython InfoWorld的Jon Udell对Jim Hugunin有个很棒的采访录像,在其中Jim Hugunin对IronPython做了很细致的演示,包括用它来写WPF程序,并与Speech API集成,调用PowerShell等 The Screening Room #8: IronPythonhttp://weblog.infoworld.com/udell/2006/08/30.html#a1515 记得看过Ruby on Rails中的Console,它允许开发人员与Domain Model直接做交互,当时觉得非常酷。现在,IronPython允许你引人任何CLR程序集,同样也能与Domain Model通过命令行来交互了。...[阅读全文]

posted @ | Feedback (4) | Filed Under [ .NET ]

摘要:Tess在她的《.NET Memory usage - A restaurant analogy(.NET中的内存使用,以餐馆做类比)》里说,其实在研究你的进程的内存使用或内存泄漏情况时,最有用的是process\private bytes and process\virtual bytes这2个performance counter。Working set这个counter 只是指进程目前还在RAM里的memory而已。如果要用Task Manager看的话,那么也要看Virtual Memory Size 一列。...[阅读全文]

posted @ | Feedback (1) | Filed Under [ .NET ]

摘要: 文章图文并茂,写得很好,作者用非常通俗的语言介绍了.NET Framework 3.0,虽然所用的术语跟我们的有点不同, 深入浅出 .NET Framework 3.0您 WinFX 了嘛 ?http://blogs.msdn.com/polo_lee/archive/2006/09/04/introduce_winfx_net30.aspx   看到里面引用了David Chappell在TechEd-Boston(2006)上的话,不禁要摘抄出来 If you are a developer, and you don’t like change, you should get out of this business as early as possible. (如果你是开发人员,但不喜欢变化,你应该尽快离开这个行业) If you are a Developer, you should always reset yourself, reset what you learn and do thing before, fundamentally. (如果你是开发人员,你应该总是重置自己(有点别扭),从根本上,忘记你学过的东西和以前做事的方式,重新开始) 说起David Chappell,他最近在MSDN上发表了 Introducing the .NET Framework 3.0http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/intronetfx30.asp...[阅读全文]

posted @ | Feedback (3) | Filed Under [ .NET ]

摘要: 根据微软产品组主管Somasegar的博客,微软提供给了巴西开发人员修改机器翻译的Visual Studio 2005和.NET Framework 2.0文档内容的WIKI系统,还允许在另外的段落里添加社区内容。 这个系统很好啊,不知道什么时候向我们开放中文版?...[阅读全文]

posted @ | Feedback (4) |

摘要: Charles Petzold的 《Applications = Code + Markup》一书正式发行了。 Karsten Januszewski 的评论,把Charles Petzold比作查尔斯-迪更斯,说Charles Petzold的风格清晰细致,引人入胜,他的编码十分简练有效。 以前对WPF只求理解其大概,玩过的编码非常有限。现在离Windows Vista的正式发行只有5个月了,看来该是认真的时候了。...[阅读全文]

posted @ | Feedback (10) | Filed Under [ 书籍 .NET ]