相关Blog:
- Step by Step安装WinFx的November CTP
- Step by Step安装WinFx的September CTP
最新发布的December CTP除了大家熟悉的WinFx(包括了WPF)之外,更有首次对外发布的Cider December CTP!
以下为在您的机器上安装December CTP的步骤。
- 假定您已经安装了Visual Studio 2005 RTM. 注意,Cider目前不支持VS的Express版本,还要注意先删除以前CTP的安装。
- 下载并且安装 Microsoft Pre-Release Software WinFX Runtime Components - December Community Technology Preview (CTP)。下载文件名为winfxsetup.exe
- 下载并且安装Microsoft Windows Software Development Kit (SDK) for the December 2005 Community Technology Preview (CTP)。下载文件名为6.0.5270.0.9.WindowsSDK_Vista_idw.DVD.Rel_Update.img
- 下载并且安装Microsoft Visual Studio Code Name “Orcas” Community Technology Preview - WinFX Development Tools。下载文件名为vsextwfx.msi.
Orcas是下一版本Visual Studio的代码名。Cider是Orcas中提供的对于WPF的Visual Designer (可视设计器)。更多Cider的内容,将在新增加的“Design Time”的分类中陆续讨论。随着Cider的日益完善,其用处将越来越广泛。而本次CTP中Cider的功能则是很有限的。
以下这行代码
Uri
uri1 = new Uri("pack://application:,,,", UriKind.Absolute);
会导致UriFormatException。其Message是:Invalid URI: A port was expected because of there is a colon (':') present but the port could not be parsed.
Message的文法是有问题的:because of应该是because. 搜索的结果表明有这样错误用法的例子还是颇有一些的。
Patterns & Practices一直有着高质量和实用可靠的名声。其口号叫做Proven practices for predictable results.
今天最新的一本350页的书名为Web Service Security: Scenarios, Patterns, and Implementation Guidance for Web Services Enhancements (WSE) 3.0.
您可以在线浏览,或者下载(4M)到本地。
相关Blog: 快讯:微软的MSN Virtual Earth Beta
现在的MSN Virtual Earth Beta搬家到了local.live.com。同时新增Bird's eye view为用户提供了清晰的图片。同一个地址可以从不同方向鸟瞰,在一定程度上达到了走遍美国的经历。(目前只有美国部分地区的地图有此view)
比如说点击此链接就看到了微软总部园区的地图。如果当前模式不是Bird's eye view,就选择之。然后的使用应该颇为直观,也有在Welcome下的Help提示。肯花一些时间navigate的用户肯定能找到别的更有趣或有吸引力的图像。
比如New York的自由女神像。
其他的功能包括对开车路线及打印的更好支持。右键点击地图,还可添加PushPin(图钉)等。
相关新闻:Windows Live Local Offers New Angle On Maps
即使如我在小记严治庆所述,我很少使用Messenger。但是今天读到Meebo的网站介绍,还是让我很有兴趣尝试了一下。
无需安装客户端程序(或者打开防火墙的更多端口),就可以在网页中同时使用一个或者多个包括MSN Messenger,Yahoo! Messenger在内的Instant Messenger的功能。相信还是有其用武之地的。
当然使用前要求您提供登录信息。您必须要信任之。
我的尝试很让人满意。对汉字输入有很好的支持。而且我还和一年多没有见面的朋友联系上了。Meebo, Meet Zhan Bo.
在我看来,注意到细节(Attention to detail)应该是软件工程师具备的重要品质之一。忽视细节就不能达到尽量完美的境界。
今天的例子是多普达566的Flash广告(我是通过其在搜狐新闻的广告点击过去的):http://www.dopod.com/gb/product/dopod566/dopod566.htm
相信该Flash的作者颇费了一番精力,其内容颇为丰富。可是我首先注意到的是其标题:无标题文档。这是缺省的Title。该网页作者因为对细节的不重视,使得一个花费广告费促销的网页看起来决不那么专业。
成功的公司总有类似的原因,失败的公司各有各的不同。在最新的Newsweek上Google的CEO和顾问提出了十大黄金准则(Google: Ten Golden Rules),收录如下:
- Hire by committee
- Cater to their every need (Their指的是程序员的)
- Pack them in (即共享的办公空间)
- Make coordination easy
- Eat your own dog food
- Encourage creativity
- Strive to reach consensus (Manager的任务是聚合观点而不是断然做决定)
- Don't be evil
- Data driven decisions
- Communicate effectively.
详情请看MSNBC网站上的文章。
作为软件开发人员,您是否希望能够快速、高质量地生产出安全、可靠的应用程序?是否希望了解基于微软下一代开发平台—— Windows Vista上全新WinFX编程模型?
2006年,Windows将迎来它的第三个十年,届时将在北京中国大饭店举行首届Windows创新日大会,其课程涉及WinFX, XAML, WPF, XPS, WWF, WCF等重要内容。免费注册,只设1200席。
详情请看官方网页:http://www.microsoft.com/china/wid/homepage/default.aspx
友情推荐白石主讲的SD306:如何在我们的应用程序中使用基于 XPS 的文件格式。
Type Forwarding指的是:.NET运行时将对某一个程序集(Assembly)之中定义类型的引用转递为对另外一个或者几个(更新的)Assembly之中同样类型的引用。
通过Type forwarding,所有引用(Reference)了Original程序集的程序会去引用新的程序集。
下面让我们通过实例演示Type Forwarding的使用
首先,创建显示Tech Ed 2005北京开始日期的一个简单类.将文件存为TechEd2005.cs.
using System;
namespace Microsoft.Tech.Ed
{
public static class China
{
public static DateTime GetBeijingStartDate()
{
return new DateTime(2005, 9, 23);
}
}
}
编译第一个Assembly: csc /t:library Teched2005.cs,生成的Assembly就叫作TechEd2005.dll.
然后我们写一个Console Application打印出日期来。将以下代码存为reminder.cs
using System;
namespace Realize.Net.Potential
{
public class Demo
{
public static void Main()
{
Console.WriteLine("Mark the date: " + Microsoft.Tech.Ed.China.GetBeijingStartDate().ToLongDateString());
}
}
}
编译reminder.cs: csc /t:exe /r:Teched2005.dll reminder.cs
运行reminder.exe就可以看到:Mark the date: Friday, September 23, 2005
但是不知不觉就到2006年了。我们需要推出新的Tech Ed日期了。假定Tech Ed 2006北京的开始日期为9月21日星期四,我们有新文件TechEd2006.cs如下
using System;
namespace Microsoft.Tech.Ed
{
public static class China
{
public static DateTime GetBeijingStartDate()
{
return new DateTime(2006, 9, 21);
}
}
}
编译产生TechEd2006.dll: csc /t:lib Teched2006.cs
只是reminder.exe还是打印出2005年的日期。我们使用Type Forwarding解决更新类型之实现的功用。修改TechEd2005.cs成为
using System;
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Tech.Ed.China))]
namespace Microsoft.Tech.Ed
{
}
注意:TechEd2005.cs中原先的实现已经被删除。重新编译TechEd2005.cs,这一次需要引用TechEd2006.dll: csc /t:library /r:teched2006.dll TechEd2005.cs
再次运行reminder.exe,就可以看到:Mark the date: Thursday, September 21, 2006
重复一下要点:第一个(旧的)Assembly需要重新编译以使用TypeForwardedTo属性,但是新的Assemby和引用旧Assembly的Reminder.exe不需要重新编译。其对Microsoft.Tech.Ed.China的引用被CLR Runtime自动转递到新的Assembly上。旧的和新的assemblies须同时存在。
TypeForwardedTo只能用于Assembly。
通过Visual Studio 2005的Build菜单,我们可以选择Configuration Manager。看一看您的机器是不是有这样的菜单项。
如果有,而且您从来不使用之,您也许更希望不要显示这一菜单项。
如果没有,您就是重新安装机器也未必可以让其显示出来。到底是如何控制其的出现和消失呢?
回答就是Tools|Option之中Projects and Solutions下的Show advanced build configurations这个checkbox.