November 2009 - Posts
【原文地址】 Microsoft AJAX CDN – Now with SSL Support 【原文发表日期】 Sunday, November 29, 2009 5:55 PM 九月的时候, 我曾在博客中写到 ASP.NET开发团队目前正提供的新 Microsoft AJAX CDN (内容分发网络)服务。该CDN提供了对AJAX 库 (包括 jQuery 和 ASP.NET AJAX)的边缘缓存(edge caching)支持。该服务是免费提供的,不需任何登记,可用于商业性和非商业性用途...
以 Internet Explorer 为例,默认情况下,IE的隐私策略如下图所设: (图一) 请注意其中这一条: 阻止保存可用来联系您的信息而没有您的明确同意的第三方Cookie。 下面我们首先来演示一下,这一条起作用的情况: 站点 b.com 有这样一个网页: http://b.com/WebApp_P3P/p3p.htm 这个页面的源代码如下: < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > < html xmlns = "http://www.w3.org/1999/xhtml" > < head > < title > P3P Test </ title > </ head > < body > 1232sasdsa < br /> < iframe src = "http://a.net/WebApp_P3P/a_setcookie.aspx" > </ iframe > </ body > </ html > 这个源代码中用 iframe 包含了 a.net 站点的一个页面。 这时候所谓的的第一方站点就是 b.com 站点,第三方站点就是 a.net 站点。 http://a.net/WebApp_P3P/a_setcookie...
【原文地址】 Presenting in Europe Next Week 【原文发表日期】 Friday, November 27, 2009 12:33 AM 下周我将动身去欧洲做多个技术演讲。我会在多个不同的城市做5-6个小时的演讲,会讨论ASP.NET 4 和 VS 2010, ASP.NET MVC 2, 和 Silverlight 4。 下面是我将访问的不同城市,以及如何注册参与有关讲座的细节: 挪威奥斯陆(12月1日) 瑞典斯德哥尔摩(12月2日) 丹麦哥本哈根(12月3日) 比利时布鲁塞尔...
阅读: 12 评论: 0 作者: geff zhang 发表于 2009-11-27 14:10 原文链接 挂起线程 挂起线程分为两种,主动挂起和被动挂起。 主动挂起可表示为: Thread.Sleep (Int32) 或 Thread.Sleep (TimeSpan) ,表示将当前调用线程挂起指定的时间。 被动挂起表示为: Thread newThread = new Thread(new ThreadStart(Work.DoWork)); newThread.Start(); newThread.Join(); 或者 Thread.CurrentThread.Join(2000); Join表示在继续执行标准的 COM 和 SendMessage 消息泵处理期间,阻止调用线程,直到某个线程终止为止。 在[STAThread]指示的Com线程模型中,我们应该使用Thread.CurrentThread.Join(2000)这种方式。 最近的一个项目使用Quartz.net的Job中调用了Thread.Sleep在挂起,运行一段时间后CPU的占用在不断增长,最后到达100%,之后改用Thread.CurrentThread.Join(2000);进行被动的挂起解决了问题。这里还有一个与之有关的示例 Thread.Sleep vs. Thread.CurrentThread.Join 发表评论 新闻频道: 版权凶猛:BT大站Mininova官司失利,被迫删除网站大部Tracker 推荐链接: Windows 7专题发布 网站导航: 博客园首页 个人主页 新闻 社区 博问 闪存 知识库 Read More...
REST 是 Representational State Transfer 的简称,是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。 REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。 这些条件和原则包括: 网络上的所有事物都被抽象为资源(resource); 资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。 每个资源对应一个唯一的资源标识符(resource identifier); 每个资源都使用 URI (Universal Resource Identifier) 得到一个惟一的地址。所有资源都共享统一的界面,以便在客户端和服务器之间传输状态。 对事物使用一致的命名规则(naming scheme)最主要的好处就是你不需要提出自己的规则——而是依靠某个已被定义,在全球范围内,能被绝大多数人所理解的规则。比如,如果你的应用中包含一个对顾客的抽象,那么我可以相当肯定,用户会希望将一个指向某个顾客的链接,能通过电子邮件发送到同事那里,或者加入到浏览器的书签中,甚至写到纸上。更透彻地讲:如果在一个类似于Amazon.com的在线商城中,没有用唯一的ID(一个URI)标识它的每一件商品,可想而知这将是多么可怕的业务决策。 当面对这个原则时,许多人惊讶于这是否意味着需要直接向外界暴露数据库记录(或者数据库记录ID)——自从多年以来面向对象的实践告诫我们,要将持久化的信息作为实现细节隐藏起来之后,哪怕是刚有点想法都常会使人惊恐。但是这条原则与隐藏实现细节两者之间并没有任何冲突:通常,值得被URI标识的事物——资源——要比数据库记录抽象的多。例如...
前几天微软推出了office 2010的测试版和微软拼音输入法2010的Beta2版本。对于Office 2010的测试版来说,我很大程度上是非常欣喜的。比如说新的可回缩的工具栏,可以让我们在工作时占用少一些的屏幕面积;而新的文件菜单和功能也很酷很实用;outlook的社区化支持等新功能也非常的不错。总之对Office 2010的测试版,除了个别Bug的问题外,我很满意。也希望微软能够加油把她做好。 但是对微软的拼音输入法2010 Beta2,我个人有一些意见和建议。首先不得不说新版微软拼音输入法的启动速度和反应速度确实有了很大提高,中英文混合输入也有了一些改进,增加了专业词库以及它的自动更新功能……这些部分确实做的非常不错,值得鼓励和赞赏。但我个人认为要做好一个作品,光听到正面的褒奖是不行,需要听到负面的问题和合理的建议。下面我个人给出几条意见和建议: 微软拼音输入法2010相对2007的改进幅度相对版本号上来说,实在有点小。提供贴心的新功能和新特性实在不多。希望最终版本能够对得起这个大版本号的提升; 微软似乎仍然没有了解到客户在现今发达的网络环境下对输入法的真正需求是什么?Windows 7已经了解了用户的很多需求了,很人性化了。那么请问输入法团队,你对用户的需求真正做了良好分析了吗?Work Run和Expression是两回事儿,不要总是说某功能在某菜单下点击进入什么什么选项卡,然后找到什么按钮,然后如何如何,藏的那么深,有没有tooltip,一个不懂技术的普通用户能够搞清楚如何使用吗?一台机器被多个用户使用的情况从不少见,公司里、家庭里,而每个个体对输入法的使用习惯是不同的,对!没错,你们在系统中加入很好的自学习以及自造词等功能,但是请问如果用户到另外一台机器上还能获得相同的体验吗...
阅读: 1 评论: 0 作者: geff zhang 发表于 2009-11-24 22:09 原文链接 Winndows Service 是一种可随 Windows 操作系统启动而启动的,在后台运行的,通常不和用户产生交互的程序。它无法通过双击来运行,类似于 Unix 守护进程(daemon processes),当用户注销时它也不会停止。 Windows 服务由三部分组成: 一个服务可执行文件; 一个服务控制程序(SCP); 服务控制管理器(SCM),负责在 HKLM"SYSTEM"CurrentControlSet"Services 下创建服务键值。用户可通过 SCP 控制服务的启动、停止、暂停等,SCP 会通过 SCM 调用服务程序 开发一个Windows服务通常也比较简单,在开发的时候我们期望以命令行方式运行,想对Windows服务有更多的控制,就有一个Windows服务框架 TopShelf 可以满足,使用这个框架要求你使用一个IoC容器,在框架中使用的是 common service locator 接口,可以根据你的喜好去选择你自己中意的IoC容器。 TopShelf的基本介绍可以参看 Dru Sellers 的介绍性文章 TopShelf 。下面的代码就是创建了一个Windows服务: using System; using System.Collections.Generic; using System.IO; using System.Timers; using log4net.Config; using Microsoft.Practices.ServiceLocation; using StructureMap; using...
【原文地址】 LIDNUG: Online chat with me Monday Nov 23rd 【原文发表日期】 Sunday, November 22, 2009 11:30 PM 过去的一周是个繁忙的一周,在今年的 PDC大会 上,有成堆的宣布和很酷的发布。 PDC所有的主题演讲和分会场讲座现在都在网上发布了,可供任何人免费观看。你可以 在这里 找到想看的讲座。 我的PDC主题演讲讨论了新的Silverlight 4发布,是在大会的第二天举行的。你可以 在这里 观看(我是在1小时2分45秒处出场的...
前一篇文章 “ WPF,Silverlight 中的 xmlns,xmlns:x ” 中提到了: 目前对于大多数的 WPF 应用程序以及 SDK 的 WPF 部分中给出的几乎所有示例版本的WPF,Silverlight 2.0 (含)以后的开发工具, 默认的 xmlns 命名空间均映射到 WPF 命名空间 http://schemas.microsoft.com/winfx/2006/xaml/presentation 。 对于Silverlight来说,从 Silverlight 2 (含)以及更高版本的 Silverlight 开始,大多数工具都默认使用 http://schemas.microsoft.com/winfx/2006/xaml/presentation 命名空间来生成 Silverlight 的 XAML 文件。不过,Silverlight 仍然支持 http://schemas.microsoft.com/client/2007 XAML 命名空间(这是用于 Silverlight 1.0 的 XAML 命名空间)。 比起WPF,Silverlight 对设置 xmlns 值加了以下限制: 根元素必须始终包含默认 xmlns 声明;没有默认值和隐含值之说。 Silverlight 的任何 xmlns 声明(无论是否在根元素中)都必须为 http://schemas.microsoft.com/winfx/2006/xaml/presentation 、 http://schemas.microsoft.com/client/2007 或(很少使用的)XPS 命名空间 ( http://schemas.microsoft...
我们在每一个XAML文件中都可以看到下面的信息: Silverlight应用 < UserControl xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns : x = "http://schemas.microsoft.com/winfx/2006/xaml" > </ UserControl > WPF应用 < Window x : Class = "WpfApplication1.Window1" xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns : x = "http://schemas.microsoft.com/winfx/2006/xaml" Title = "Window1" Height = "300" Width = "300" > < Grid > </ Grid > </ Window > XAML文件首先是一个XML文件。为了验证自己和子元素的合法性,即保证在XML文档中的元素和属性名字的合法性,XML规范了XML命名空间,参看下面文档: http://www.opendl.com/openxml/w3/TR/xml-names/xml-names-gb.html ...
More Posts
Next page »