晚上设置了下博客,顺便把MSDN的一些元素搬过来了,还有一些地方比如边栏要完善。明天再说啦。

 

说明:这个皮肤是基于“简约”皮肤的,下面是我添加的CSS:

Code
a:hover{color:#f60}
body
{background:#fff}
iframe
{display:none}
#main
{margin:10px;background:#f3f3f3;border:1px solid #999}
.headermaintitle
{background:url(http://www.cnblogs.com/images/cnblogs_com/shinyzhu/75121/o_ff_all_emoti.gif) no-repeat left center;padding:5px 0 5px 55px;line-height:34px;color:#fff}
.postTitle a, .postTitle a:link, .postTitle a:visited
{padding:0;color: #03c;font-size: 14px;}
.postTitle a:hover
{padding:0;color: #f60;text-decoration: none;border:none;}
#header
{background:#801e2b url(http://i3.msdn.microsoft.com/Platform/Controls/Masthead/resources/msdn.BG1.jpg) no-repeat left top}

#blogTitle
{padding:0 16px 0}
#blogTitle h2
{color:#fff;font-size:12px}
.blogStats
{color:#fff}
#navigator
{background:#9b4342 url(http://i3.msdn.microsoft.com/Platform/Controls/tabstrip/resources/msdn.glassBG1.jpg) no-repeat left top;border:none;border-top:1px solid #d09291;border-bottom:solid 1px #253e53}
.menu
{color:#fff}

#mainContent
{}
#sideBar
{border:none;}
.forFlow
{}
.clear
{clear:both;}

.day
{margin:5px;padding:5px;border:1px solid #999;border-top:none;background:#fff url(http://i3.msdn.microsoft.com/platform/MasterPages/PortalPage/box_BG_repeater.jpg) repeat-x top}
.dayTitle
{display:block;font-size:16px;font-weight:bold}
.postTitle,.entrylistPosttitle,.feedback_area_title
{border-bottom:none;margin:0;}
.postDesc,.entrylistItemPostDesc
{border-bottom:none;}

posted @ 2008-09-08 23:28 Shiny Zhu 阅读(4) | 评论 (0)编辑
B5

 9月1号,交接好以前公司的工作,回家没有开电脑,好好休息着,等待第二天的报道。

 到今天9月7号已经在新公司有一周时间了,逐渐熟悉新环境的同时,体会着不同的感受。

  首先,从以前小公司的孤军奋战变成了团体协作;

 然后,从以前的每天下午上班变成了朝9晚6的上班;

 还有,每天要踏上公司的班车;

 还有,每天中午要吃食堂了;

 总之,一切都让我很激动、很兴奋……

 

 加油吧!

 

 在此要特别感谢我们的园长dudu同志!还要感谢所有支持我的朋友们。

 

 明天继续上班,精彩将继续。

posted @ 2008-09-07 21:54 Shiny Zhu 阅读(42) | 评论 (2)编辑
IE8 Beta 2

 

大家非常非常熟悉的IE发布了IE8 Beta 2,可能园子里很多朋友已经在用了,由于目前是Beta版本,所以bug比较多,比如QZone不兼容等诸多问题。我们当“小白鼠”的应该已经预料到这些了。

但是,为了更好地改进我们的主流浏览器各方面的特性,请您在使用过程中尽量多花一点时间,尤其是在浏览器不正常工作的时候,多鼓捣它几下,能找到故障的原因是最好的,不能找到原因的,也请从多方面考虑一下这个过程。这样做的目的,都是为了提高正式版的质量。一起来吧!也许正式版里就有你提交的建议被采纳噢!

下面我提供一些资源链接,为您在使用过程中的求助、参考及反馈提供一些帮助。

当然,首先是微软中文技术论坛了,大家别忘了常去看看。

 

Internet Explorer 8 Beta2 常见问题解答

http://forums.microsoft.com/china/ShowPost.aspx?PostID=3832844&SiteID=15&mode=1

 

Internet Explorer 8 Beta2 Top Features

http://forums.microsoft.com/china/ShowPost.aspx?PostID=3832911&SiteID=15&mode=1

 

IE 8 Beta 2中文版首份试用体验

http://forums.microsoft.com/china/ShowPost.aspx?PostID=3832938&SiteID=15


另外,Windows Vista下相关的请到这个版块:

http://forums.microsoft.com/china/ShowForum.aspx?ForumID=1707&SiteID=15

 

最后介绍的是一个综合站点,这里有微软最新发布的测试版等软件及预报信息,当然也有开发团队在等着你的意见反馈,IE8的意见请到:https://connect.microsoft.com/IE/feedback

posted @ 2008-09-04 23:00 Shiny Zhu 阅读(53) | 评论 (0)编辑

ASP.NET团队昨天刚刚发布了ASP.NET MVC 的第五个预览版本。跟以往的版本一样,Preview 5也是一个临时的、过渡的版本,请到这里下载。使用前还是需要将您的Visual Studio 2008升级到SP1 RTM。

按照Haacked的说法,这个版本的发布是为了收集更多的建议和反馈。所以为了即将到来的Beta版本的发布,请您在体验之后记得到Codeplex里留下您的意见,很可能您的想法就会包含在下一个版本里噢!比如命名啊、Bug啊等等。

 

接下来我们看看Preview 5的一些改进。主要有:

 

The follwing issues are addressed in this release (see the Release Notes for more detail on any changes)

  • Html Helpers need to look into ModelState to get attempted value
  • Add a convenience overload for Html.ActionLink
  • Need friendly exception for UpdateModel type conversion errors.
  • UpdateModel needs to report a message when a property setter throws an exception

此版本主要有如下几点改进:

  • HtmlHelper需要在ViewData.ModelState里获取值
  • Html.ActionLink添加了一个方便的重载方法
  • UpdateModel的类型转换抛出异常时需要友好的错误消息
  • UpdateModel在设置属性抛出异常的时候需要提供信息

详细的改进在Release Notes有描述,稍候放上来:)

 

posted @ 2008-08-30 01:05 Shiny Zhu 阅读(60) | 评论 (0)编辑

Independent Experts, Real World Answers 是微软MVP项目的口号,目前正在征集中国本地化的口号,你想到的是什么呢?

 

我今天给Sisley提交了这几个想法:

 

独具匠心的专家,巧夺天工的解答;(还可以用匠心独运独出心裁
专家特立独行,答案精益求精(或实事求是);(特立独行:《礼记·儒行》:“其特立独行,有如此者。” 形容人的志行高洁,不同流俗,不随波逐流,有独立见解。误解的地方是从字面来看有“我行我素”的意思,实际上没有)
能匠特立独行,见地精益求精;(见地比见解好,见解很正确很精辟才称之为见地)
能工巧匠特立独行,真知灼见精益求精
 
嗯,个人最喜欢最后一个。

 


posted @ 2008-08-22 18:26 Shiny Zhu 阅读(49) | 评论 (2)编辑

分享一个小技巧,我前几天听Jesse Liberty的一个webcast时学到的。

 

我们在使用Visual Studio的时候,添加一个源文件(这里以C#为例)时,已经有了许多命名空间的引用,一大堆的using这个using那个的,特别是在ASP.NET页面的后台代码,有12行using,然而有的命名空间我们根本用不到,是否有一种方法美化(用“优化”不妥当)一下呢?

 

很简单,在using那部分代码点击鼠标右键,在弹出的菜单中选择“Organize Usings",就有三个选择:Remove Unused Usings, Sort Usings和Remove and Sort。然后就可以得到简洁的using了,感觉很不错哦!

 


 

要注意的是要在编译之后进行这个操作,完成之后再编译。

posted @ 2008-08-15 10:43 Shiny Zhu 阅读(91) | 评论 (4)编辑

上周在校内逛了一下,加入了开发者群,本来不打算在校内做什么程序的,因为它一直抄facebook,最近更是加快了抄袭的速度,新风格没几天就抄过来了,真神奇。

 

后来看了下API,再看了下群里面,没有找到完整的.NET实现,索性我来写一个玩玩吧。

 

说实话我写组件的历史不长,甚至根本就不会写,只能说练练手而已,之前给饭否写了个API封装的程序集,好像到现在为止,就我自己的一个桌面程序在使用它。

 

校内的文档很不完整,不过之前熟悉了下Facebook的文档,校内的这些方法和参数,完全跟facebook的一样。不过很多还不支持而已,而已。。

 

花了大概3天的时间阅读Facebook的文档来熟悉校内API(这话越念越别扭),然后写了个程序集封装了校内API的12个方法,项目我已经发布在codeplex啦,另外在校内xCube群里也有帖子。

 

写XiaoneiNet的目的是让开发第三方应用更简单,你可以不必关心API的调用和返回,而直接做网站一样的进行开发,然后在校内创建一个应用,就完成了部署。不过我还没有什么点子来做这样一个应用。

 

程序集和源代码及例子,还有文档(用SandCastle生成的)在这里下载:http://www.codeplex.com/XiaoneiNet/Release/ProjectReleases.aspx?ReleaseId=16268


用法很简单,直接上代码段:

 

Code

 

希望各位看到代码有什么不爽的地方请不要吝啬一点时间给我留个言,我将感激不尽啊!谢谢先。

posted @ 2008-08-13 18:01 Shiny Zhu 阅读(169) | 评论 (3)编辑

Expression团队昨天发布了Deep Zoom Composer预览版的新构建,以及介绍了对PhotoZoom的支持。

PhotoZoom是Live Labs推出的一个方便共享用Deep Zoom Composer创建的相册的免费服务,用新版本的Deep Zoom Composer可以直接创建并分享到PhotoZoom,这个链接就是偶分享的一个成都地图:http://photozoom.mslivelabs.com/album.aspx?alias=ShinyZhu&album=3

 

 

dzcicon 现在就下载 Deep Zoom Composer
posted @ 2008-08-05 16:13 Shiny Zhu 阅读(48) | 评论 (0)编辑

如果你既安装了Silverlight 2 beta 2 SDK 又安装了 ASP.NET MVC Codeplex Preview 4 的话,创建Silverlight程序的时候就多了一个选项:

 

 

但是,不巧的是,我今天尝试了两次这个选择,都失败了,而且失败得很彻底,VS2008直接不见了!

还需要完善啊。

 

今天这个月月底了,时间真快。

 

P.S. 今天跟一朋友聊天的时候聊到很多IT人从心底不喜欢英语,因此几乎不看英文的技术文章,我觉得这样是不好的,我们要承认技术用英语描述的要比中文描述的多得多原始得多,为何不看呢?同时我有个小想法,如果以后有相关的文章的话,我尽量以中英文对照发布在这里,希望能有帮助。

posted @ 2008-07-31 20:11 Shiny Zhu 阅读(42) | 评论 (2)编辑

把这个帖子也搬到园子里来,私底下秀一秀,哈哈!

 

这些东东是参加各种活动得到的,很多活动可能影响范围比较小,参与的人不多,所以奖品覆盖范围就大一些,我就很幸运地得到一些

 

Amoi E850

 

2007年参加MSN机器人得的二等奖,就是小i机器人那个网站举办的,自从那开始就没再买过手机,也好,我的K700用坏之后刚好有替代的。:D

 

Amoi E850

 

 

 

Microsoft Wireless Laser Mouse 5000

 

参加去年12月份的DEV-WOW得到的幸运奖。

 

 

 

 

 

Dopod S1

 

这个也是DEV-WOW的,最后得了个三等奖。什么时候再举办一次这样的活动呢?

 

 

 

 

Microsoft Wireless Notebook Presenter Mouse 8000

 

微软中文技术论坛举办的十大论坛英雄TOP1的礼物,感谢论坛,感谢微软!

 


 

 

 

2008 MVP Award: Bluetooth Suite

 

这个吧,园子里很多朋友都有。我的耳机已经被我掰了两条缝了,不知道什么时候断掉。

 


 

有几个是本本外设,我还差一个本本,等迅驰2平台跳水之后考虑入手一个。

posted @ 2008-07-29 11:12 Shiny Zhu 阅读(20) | 评论 (0)编辑

在园子里从2005年5月算来到现在也有不少个年头了,但几乎一直潜水。去年开始在微软中文技术论坛闲逛,有幸得到这个7月的ASP/ASP.NET方向的MVP,更有幸加入到这个团队中来,希望大家多多指教。

我从大学开始就一直在成都,目前在一家旅行社负责网络产品的开发及推广,工作比较轻松,主要做WEB。

可能也因为是小公司,所有的技术决策都由我一个人来完成,因此总是用的最新的技术,比如.NET3.5,及ASP.NET MVC,还有Silverlight等,这也跟我一直对新技术非常热衷有一定关系吧。

目前来说我只是在WEB方面做得事情比较多,以前工作的时候对WEB标准着迷,还有SEO,应该是国内比较早把这些元素放在实际应用中的了,后来需要后台的程序逻辑等,我就选择了比较容易的.NET,也的确很方便。

我认为技术是在不断地学习不断地分享这一系列过程中得到提高的,但任何时候都要经过自己的深思熟虑、自己的理解之后,才会真正沉淀下来,那才是真正的精华。

啊!初来乍到,请多多指教,非常感谢!

posted @ 2008-07-28 14:10 Shiny Zhu 阅读(89) | 评论 (7)编辑

这个可以扩展到矢量图中路径的填充规则,因为所有矢量图都采用这个规则来填充封闭路径的内部,在这里只以Silverlight为例。

在网上找了很久关于填充规则的介绍,经过了几天的阅读和自己理解还有亲自尝试,现在终于能说出过所以然来了,立马分享给大家。

 

矢量路径的填充规则有两种方式,EvenOdd 和 NonZero,下面是我自己总结的中文解释(挺拗口的)。

 

EvenOdd 方式是指从路径内部到外部经过了与路径有偶数个交叉点的那些点被认为在路径之外,有奇数个交叉点的那些点被认为在路径之内并且会被填充

 

NonZero 方式是指从路径内部到外部经过的那些路径中从左到右和从右到左的数量不相同(差不为0)的那些点会被填充

 

事实上并没有那么复杂,来看一个实际的例子吧:

 

1<Path Fill="Yellow"
2  Stroke="Blue" StrokeThickness="3"
3  Data="F1 M 420,200 L 750,200 L 460,300 L 650,100 L 550,350 L 450,150 L 700,350 L 550,150 Z"
4/>

 

 运行之后的图形如下,顶点作了标记:

 

 

注意上图是NonZero填充。图中A点向外部可以看出经过了2个从左到右(3->4, 5->6,这里方向是从1到9。你也可以从9到1算方向)的路径,但没经过从右到左的路径,所以这两个值的差不为0,所以A点应该被填充。

 

下面是默认的EvenOdd填充效果:

 

 

A点向外经过了2个与路径的交叉点,所以被认为在路径之外,所以就不填充。你也可以向反方向画线,但仍然是偶数个交叉点

 

PS,Path的Data里的命令是区分大小写的,带坐标的命令如果是大写,则用绝对坐标,小写则用相对坐标,要注意噢!


posted @ 2008-07-27 23:05 Shiny Zhu 阅读(39) | 评论 (0)编辑

如果你已经安装了Silverlight插件,当你再次访问安装页面的时候,会看到一个不断旋转的Silverlight Logo,很漂亮是吧?

我已经把它下载回来并修改了一下, 你可以把它当作Loading指示器,应该比较酷。

 

它本身是一个wmv的视频,通过让它循环播放达到的动态效果。或许你还找到了另外一个动态Logo,但是它在重复播放的时候会卡住一下,细心的你应该会发现。


例子我是没地方放了,直接提供下载吧,在1.0环境下就可以运行的,2.0就不用说了。

 

/Files/shinyzhu/Nebula.zip

 

希望你会喜欢,另外,如果你有Silverlight相关的问题和分享的话,请到微软中文技术社区Silverlight版看看。

posted @ 2008-07-27 19:19 Shiny Zhu 阅读(47) | 评论 (0)编辑

就是这个结果,因为5月份的时候我的网站上有两篇关于地震中笑话的日志,就这样,它需要闭关自守、面壁思过、彻底悔过……。

总之,为了迎接奥运,奥运啊,多么世界性的话题,多么全球化的主题,我们怎么能谈其他的事情呢?

关了!

 

以前在shinyzhu.com的日志也没什么重要的,关于ASP.NET MVC中日历扩展的那个帖子我会在这里完善。还有到时间自动打电话的小程序,还有很多问题,就算了,let it go。

 

最近有更重要的事情要做,这些小CASE,放到一边吧!

 

就这样。

posted @ 2008-07-24 21:38 Shiny Zhu 阅读(34) | 评论 (2)编辑
在ASP.NET MVC里应该没有人愿意用<asp:Calendar ...>这个控件吧?它必须要求服务器端的一个form,但这已经违背了MVC的原则,所以我们不能用它啦。
或许你可以用javascript的日历来解决你的问题,那也很不错。
我这里向你推荐一个日历“控件”,它是扩展到HtmlHelper的,所以你可以在页面里使用<%= Html.Calendar() %>就可以得到一个标准化的日历了。

要下载源码和例子请到:http://shinyzhu.com/blog/entry/aspnet-mvc-calendar(这个地址暂时关闭了,请到下面的链接)
另外别忘了支持这个项目:http://www.codeplex.com/mvcapps

首先说说这个日历的作用,简单一点地说呢,就是可以显示指定月份的日历,最简单的方式就是 Html.Calendar ,它生成一个当前月份的日历。要指定日期也需要指定一个名字,因为同一个id不能在同一个页面出现多次,所以我这么要求了。代码是:
<%= Html.Calendar("otherName", selectedDate) %>
就可以显示指定日期那个月份了。

 

 

其实这个的原理是遍历月份的每一天,然后输出HTML字符串,很简单吧?


我的一个需求是要把当前日志按日期归档,有日志的那天我需要在日历上有一个链接,链接到这一天的归档。

这个就是我扩展它的原因了。

具体应用请看代码:

public static string Calendar(this HtmlHelper helper, string name, DateTime selectedDate, IEnumerable<DateTime> rawDates, string controllerName, string actionName);

这个是方法原型。

像这么用:



得到的效果是:



好了。需要注意的地方就是,目前这个日历链接中,controller和action是参数指定的,values目前只支持date=year-month-daydate=year-month两种格式。你可以在Route配置里配置一个 "blog/archive/{date}“ 然后就可以生成像我的网站那种链接了。很方便吧?

欢迎砸鸡蛋哦!谢谢啦。图片已更新。
posted @ 2008-07-11 18:05 Shiny Zhu 阅读(526) | 评论 (0)编辑
以下是2008年7月中国MVP名单:
包建强  曹海军  曹恒云   陈方旭   陈广琛  
陈俊森  陈黎夫  陈缘    崔路明    段君毅  
范楠    冯立超  傅曦    葛涵涛    郭保卫  
胡林    胡铭娅  黄鸣    黄昕     黄振宇  
贾涛    贾笑明  金华    金磊     瞿晟荣  
雷扬    李斌    李皓    李家佳   李建忠  
李晓东  李岩玻  梁凤飚  林立     刘大双  
刘晖    罗江华  马健    马靖     牛可  
彭爱华  彭斌    祁清华  石王冬欣  苏繁  
苏鹏    唐天浩  童广林  王岗     王辉  
王亮    王少葵  王晓烽  王新宇   武眉博  
徐火军  徐晓卓  闫诺    杨海伟   杨明波  
尤扬    于淼    余勇    袁永福   张斌  
张诚    张德强  张杰    张寅生   张玉彬  
赵峰    赵劼    赵俊其  郑华    钟伟  
周建平  周金桥  周圣    周银辉  朱炜  
朱兴亮  朱兴林  朱永光  邹鋆弢

真幸运,我也在里面。
Congratulations, everybody!
其中有不少认识的朋友。:)
posted @ 2008-07-02 10:48 Shiny Zhu 阅读(47) | 评论 (2)编辑