Register  |  
About the author
Baldwin's Status
 Contact Me
Baldwin Sun
Senior Developer for dnn solution & founder of SunBlog module...
Blog搜索
相册库
更多照片请查看相册库
最新评论
Rss Feed
feedsky
抓虾
pageflakes
newsgator
哪吒
我们的服务
  • DotNetNuke 咨询
  • Web设计及其模块开发
  • 免费建站
  • 电子商务
  • 开拓市场
我们致力于开发定制的web 2.0 ,所服务的客户主要包括小中型企业,社区俱乐部及其非盈利机构组织。我们将利用开源的DNN作为我们核心的系统机制,更多相关信息...

杂项

对DNN及其相关本网站的一些琐碎事情。

中国DNN联盟正式成立

2008年7月27日, 这是一个DNN在中国值得纪念的日子, 这一天, 中国DNN联盟正式成立, 同时, 主题为"我与DNN共成长"的第一届团队活动聚会正式拉开了帷幕, 活动中间, 大家彼此讨论和交流DNN的心得及体会, 展望DNN的发展前景和未来的趋势走向. 我有幸在此聚会结识了不少DNN资深人士及其爱好者, 我想大家的目的都是一样的, 就是想为DNN在中国的推广尽一份力,一份心, 当然我们组织这一活动也是让DNN在国内得到更多的支持, 让更多人加入我们的社区, 共同创造一种学习交流的氛围, 让DNN真正名副其实的"开源". 在此期间, m2land全身心的组织这一活动, 包括发起, 宣传, 布置, 联络等等工作, 为此让我们谢谢m2land, 还有小艾,jeemoo等团队核心的协作和支持. 按照我们的初衷, 就是想通过线下的活动让大家有更多的机会互通有无, 为我们的DNN事业提供更多的机会, 对此我们需要包容所有人的目的和想法, 让大家都能在活动中得到自己需要的东西或达到自己的目标( 或学习 或交朋友 或合作等等).  我们会坚持自己, 让这样的交流活动持续下去, 越办越好, 鼓励更多的人加入我们.
最后我共享一下自己的演示PPT, 因为准备比较仓促, 之后稍微整理了一下, 希望对大家有帮助, 更多的资料我们会不断在论坛中共享给大家. ( 下载地址: 玩转DNN.zip )

[转载] SourceForge可正常访问

经过一个月的屏蔽,世界最大的专业开源软件项目网站SourceForge重新可以正常访问,而此时离北京奥运会开幕仅仅只有两个星期,SourceForge被屏蔽了不多不少整整三十天。
SourceForge做为一个专业编程技术网站被屏蔽,令广大的程序员和开发工程师感到不满,因为中国的程序员下载开源软件项目变得非常困难了,而不得不寻找代理服务器才能下载SourceForge上面的代码,至今没有任何官方的消息证实为何屏蔽SourceForge,而一个月后,也没有官方解释为何解封SourceForge。
现在,令广大程序员欣慰的是,我们的SourceForge又可以访问了,中国的程序员应该为此感到欣慰,因为我们永远也不知道何时它将会再次消失。

站点更新日志-相册库模块

不知你是否注意到没, 本Blog已添加一个新成员, 那就是相册模块, 作为传播信息和承载交流的平台, Blog本身就该给与更多的手段或方式去把信息展示给读者, 并增加与读者的交互, 而所谓"一图胜千字"的理念也应该得于体现, 故此相册模块也就是应运而生了, 主要是利用目前很火的silverlight技术来搭建(后续文章将分享如何在DNN整合silverlight, 如何开发silverlight模块等等, 敬请关注), 同时现在也正值DNN Open Force '08即将隆重登场, 该相册将重点展示一些关于大会的照片和相关DNN的图片, 希望你们也可以分享一下自己看到的, 觉得很有看头的DNN图片(如果有的话), :)
目前该模块还在测试阶段, 图片将陆续更新....

不一样的分页算法

分享一下最近研究分页算法的心得,也就是发现一个比较有意思的算法,也许不是最优的,也不是最好,当然也不推荐使用,但是在此列举一下以博各位一哂...

拥抱PNG(如何在DNN应用PNG格式图象)

png demoPNG 是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图 形格式(Portable Network Graphic Format,PNG)这一名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可 存储多到16位的α通道数据。

推荐系列:Scheduler,Reset skin等(2008年第2期)

[1] DNN Scheduler Mechanism,翻译过来即为调度任务机制。
调度管理是DNN提供给开发者在一定的时间间隔实现调度任务的一种机制。利用你可以定制开发满足需求的调度任务,它也是在DNN典型模式(提供者模式)的基础上实现的,故可不更改核心代码就创建新的或修改原有的调度服务。关于如何使用DNN调度任务机制请查看我曾经在博客园的相关文章:
DNN调度管理解析(一)-----简单介绍及其API
DNN调度管理解析(二)-----自定义调度任务
DNN调度管理解析(三)-----如何运用DNN调度服务
相关链接:
How to Write a Custom DotNetNuke SchedulerClient (i.e. a Scheduled Task)
Programmatically Add, Delete, and Update Scheduled Tasks
[2] 重置皮肤
有时我们在配置皮肤时可能会出现一些莫名其妙的问题,比如找不到皮肤文件,或不小心删除皮肤文件夹可是还有某一页面仍然引用这一皮肤。这可能会使得DNN站点无法访问,当然修改管理皮肤也就无从谈起了.这时可通过以下类似URL重置皮肤,请注意参数SkinSrc之后的链接,我想你应该也猜到了,这就是DNN默认的皮肤dnn-blue!
http://localhost/dnnsun/Admin/Skins/tabid/49/Default.aspx?SkinSrc=[G]/skins/dnn-blue/Horizontal Menu - Fixed Width
[3] 如何创建一个符合XHTML标准的皮肤
应该承认DNN一直到现在的版本依然很难符合XHTML标准,但也无可否认它一直在往这个方向靠拢,不管是从模块开发还是皮肤设计都能看出这种努力的尝试。下边这篇文章就是列举了一些我们在设计符合XHTML标准的皮肤需要注意的原则或要点:
XHTML Skinning Uncovered
[4] 一种新的升级DNN的方式
说实在话,我也一直觉得DNN升级是一件很让人费心劳力的事情,需要考虑的东西太多,包括数据库的备份,SQL语句的执行,文件的备份等等,其中无法控制的就是web.config的修改,你需要明了其中配置的变化,不然你的站点也许无法正常运行,而可喜的就是自从DNN 4.6.2分布以来,DNN提供一些系列的方法让你可以在模块级别控制web.config的修改,包括增删改等操作,有兴趣者不妨看看这两篇文章,也许你从此找出答案来:
Core members feel the pain of upgrades too
XmlMerge - what is it?
[5] CodeSmith 开发模版下载
我只记得当初刚开始学习DNN的时候一直都在用CodeSmith 开发模版来生成代码,特别是在数据库表和业务逻辑层之间的代码生成的过程中特别有用,这可以节省很多的时间,后来才有了XX_StarterKit.vsi的出现,而现在由于DNN增加了IHydratable接口(关于IHydratable,不妨参看我之前的文章"王者归来—再谈CBO"),最初的CodeSmith 开发模版也许不再适用,这里提供最新的CodeSmith 开发模版下载,共享一下:
IHydratable CodeSmith
关于如何使用这一模块可参看这一文章:
Easily Create DAL for Your DNN Modules

读书杂感--开源与我

昨儿闲着无聊,看了看6月份的程序员杂志,发现有一个专题《开源在中国》, 主要介绍开源社区和开源软件在国内的一些发展历程,毋庸置疑,开源如今在国人的分量越来越重了。其间有些奇怪的是,似乎这些开源都是linux或java的专属权,我在所有文章中看不到任何关于Microsoft或衍生产品的开源的字眼,更别提我目前倾心的DNN框架了。不知这之间有啥不为人知的缘由,也许是Microsoft一直都在扮演霸主,“不开源”的典型代表吧,故此也就无从位列开源队伍了。:)
不管如何,至少我觉得有些文章写得还是不错的,我想开源精神都是一致的,DNN也是一种开源,尽管不为众人所知,故文章中提及的经验及其心得还是对我颇为裨益,故在此列举一些作为记录,也算是对自己倾心于DNN的鼓励和鞭策。同时在此有所呼吁,结交更多志同道合者(加盟dnnsun.com),希望DNN能够在国内真正的成为一个正规的开源社区,而不停留于本地化及其一些表面工作。
选择一个开源产品的标准:
1)目前的功能及其Roadmap
2)软件本身的架构
3)开发的活跃度及其社区的支持力度
4)该开源软件是否是遵守该领域的国际规范
5)与同类产品相比,可能存在移植的代价
我想补充的一点是: 6)可扩展性(这是DNN的优势)
开源之三重阶段(境界):
1)敞开心胸,拥抱开源( Open to Open Source)
2)深入开源,了解开源( Gig into Open Source)
3)融入开源,贡献开源( Get involved in Open Source )
对想做开源社区或参与开源项目的爱好者的三条建议:
1)要有激情,一定要热爱你做的项目。
2)要具备良好的语言能力,英语要达到一定的交流水平。(看来,这点并非独对DNN所特有, ^_^)
3)要真正理解开源运动的本质--共享精神,舍得把自己好的想法共享,放得下自己的名利,不能为了突出个人的贡献或个人在社区的地位就太突出自己。有些东西即使你能做,如果别人能做要尽量交给他人去做,这样才能形成一个团队,或者一种社区的精神--共享精神。(觉得这是DNN在中国最缺陷的)。
可从开源所获益的有:
1)阅读开源代码,有利于从理论到实践的平滑过渡。
评语:我想这像是对学生讲的,^_^ ,希望哪位读者如果还是在校学生的话,不妨在大学期间对代码实践有一定的重视。这不妨以我个人为例讲讲,本人对DNN的情缘也是从大学开始的,当时在一家公司实习,由于采用DNN作为底层框架,故而结识了DNN,而这一切来源于DNN当初很炫的“拖拽”功能。直至毕业前夕,论文的题目就毫不犹豫定位于DNN,尽管当初DNN资料相对缺陷,但是自己还是完美的搞定毕设,同时也有了dnnsun.com的诞生,而很让我觉得骄傲和自豪的是,答辩之间老师们看到我演示的站点竟然是一个在线站点,而且功能如此齐全,似乎有些“震撼”。
2) 阅读开源代码,与高手交流
评语: 的确,阅读高质量的代码,自己的代码风格,编程技巧和设计方法都在潜移默化得于提升,这在DNN模块开发中极为必要,因为核心代码或核心模块有很多地方可以借鉴。 这在我之前的文章曾累次提及到。
3)阅读开源代码,紧跟技术潮流。
使用开源的较高境界:(不大恰当的比喻:作者语)
开源项目多如牛毛,就像漫天的繁星,天空中有那么多美丽的星星,每一颗可能都是一个开源项目。我们在面对一个具体的需求,应该能像找到上帝的感觉,在信手挥洒之间,把这些星星组合成一个又一个不同的美丽星座。
评语: 有些赞同,具体到我个人,对开源该有些理想主义,特别是做一个非盈利的开源网站,就拿dnnsun.com来说,尽管我一直在撰写一些自己开发DNN的心得或文章,可却激不起多大的波澜,大家也没有什么交互的留言,这也许是国人的"习惯", 自不敢有所奢望。我更多还是一种自得其乐的心态,想做点事,踏踏实实做点事情,想到也许一些成果会对某个不知身在何处的DNN爱好者带来一些好处或帮助,我就心有所欣慰了。

推荐系列:一些感想及资源(2008年第1期 )

最近因为定制开发本站点的Blog模块,需要增加Skins(主题)功能,需要在页面加载时动态加载对应的样式文件,类似DNN默认的Skins加载机制,苦于没有合适的方法,后来Google了一把,觉得发现解决方案就在之前方便过的文章中"加速DNN的新举措",正所谓"踏破铁鞋无觅处,得来全不费功夫",资源就在眼前,何须苦苦寻找呢,所以我发觉有时工作之余有所心得如果能够记录下来,下次也许你碰到类似的问题能从此能到提示甚至现成的解决方案,因为有时人毕竟还是会健忘的,而这可以节省不少时间.故此有时在开发DNN过程,出现问题我就会想到我是否已经对类似问题有所记录,一般都会思索一番,然后在自己博客中看看,这的确帮助我不少,比如CommandButton的使用("再谈dnn的物尽所用(三)"), Skin docType的声明("解析DNN皮肤级别的doctype声明",URL用户控件的扩展("浅谈如何做到dnn物尽所用(二)")等等.希望大家也能从此能到一些提示或帮助.
按照惯例,今天在此还是分享一些资源:
1) Installing DotNetNuke 4.8.2 on localhost - Vista Home Premium and IIS7
作者详细讲述如何在Vista操作系统和IIS7下安装DNN4.8.2,列举了一些注意的步骤等等,图文并茂,也许对新入门的你有些帮助...
http://www.sunsethillsolutions.com/Resources/DotNetNuke/tabid/362/articleType/ArticleView/articleId/16/Default.aspx
2)Introduction to DotNetNuke Module Development
http://www.sunsethill.ca/Resources/DotNetNuke/tabid/362/articleType/ArticleView/articleId/17/Introduction-to-DotNetNuke-Module-Development.aspx
跟上一篇文章是同一个作者,同样图文并茂的讲述如何搭建DNN模块的开发环境及其创建"Hello,World"模块.
类似相关的文章你也可以在http://www.adefwebserver.com/DotNetNukeHELP/能找到比较详细的专题教程.
3)YAF论坛
自从IBuyPortal正式升级到DNN,YAF论坛就已经整合成为DNN模块,记得当时算是DNN框架下第一个开源的论坛,到目前为止,DNN相关的论坛比较有名就是ActiveForum, YAF-Forum, 还有就是DNN后来开发的核心论坛模块DNN-Forum.目前YAF论坛也升级到YAF-v1.9.1,可以在dnn4.5版本之上正常运行.有兴趣者不妨去官方网站看看:http://www.yetanotherforum.net/
4)DNN是微软国度的二等公民么?
对此DNN创始人Shaun Walker澄清了相关言论并对DNN的地位进行确认,关心DNN成长的你不妨看看:
Is DotNetNuke a second-class citizen?
http://www.dotnetnuke.com/Community/Blogs/tabid/825/EntryID/1831/Default.aspx
相关链接:
Who Uses DotNetNuke?
http://www.dotnetnuke.com/Community/Blogs/tabid/825/EntryID/1655/Default.aspx
你会发现DNN不再是在襁褓的婴儿,它是不容小觑的!
5)如何注释你的代码
   http://www.devtopics.com/13-tips-to-comment-your-code/
  这是一篇本人逛博客园看到的文章,作者列举了13个注释代码的原则或技巧,很有借鉴意义,记得<<代码大全>>也说到类似问题,万变不离其宗,个人觉得基本的原则是当你在构思你的代码时,不妨想想这些原则就好(当然不可能全都能顾及到), 这就是你对你的代码及其维护代码人员的一种负责态度了. 其中我最欣赏的是<10>,<11>,<12>. ^_^
  <1> Comment each level
  <2> Use paragraph comments
  <3> Align comments in consecutive lines
  <4> Don't insult the reader's intelligence
  <5> Be polite
  <6> Get to the point
  <7> Use a consistent style
  <8> Use special tags for internal use
  <9> Comment code while writing it
  <10> Write comments as if they were for you (in fact, they are)
  <11> Update comments when you update the code
  <12> The golden rule of comments: readable code
  <13> Share these tips with your colleagues

你在为寻找dnn资源而发愁么?

如题目所言, 你在为寻找dnn资源而发愁么?苦于搜索好些时候也没找到自己所遇到问题的合适解决方案, 其实对我个人所言, 如果你想查找dnn资源, 毕竟还是国外资源要比国内资源丰富得多, 时效性也好些,故此我推荐大家如果有点耐性的话不妨多看看国外的DNN资源, 我想这对你的dnn之旅会受益不少. 在此我推荐一个专门针对dnn资源搜索的网站, 你可以比较有针对性的获取到纯"DNN" 的第一手资源, 也许里边就有你想要的解决方案, 同时它也提供了一些有效获取dnn资源的途径:

你愿意共享DNN资源么,抑或你需要DNN资源?

在一个QQ群里,总是不断有新人进来,就好比dnn社区,也不断会有新手进来,这不可避免出现老是不断的问同一个问题的状况,在此我想创建一个专门共享资源的群区,大家可以在此分享自己的DNN资源,积少成多,我想最终我们大家都会受益匪浅的.这样就有DNNSUN讨论区(群号:60930597)的创建,哪位有兴趣者不妨加入,但有一个小小要求,希望你不是那种只顾索要资源的类型,而是真正的发扬资源共享精神的一分子. 当然因为DNN本源就是开源的,所有我们在此更多的是推广DNN的非商业运用及其资源收集.
如果你愿意分享的话,我会负责整理这些资源,让大家一起受益,也让后来者感激不已的.当然我们团队也会收集所有关于dnn的资源发布在这里(或我们的站点http://www.dnnsun.com)
目前我们的口号是:让我们一起努力,研究DNN的所有相关课题,希望给DNN在中国的广为人知贡献一点绵薄之力!
这一活动的伸延就是Best Web Gallary的诞生,在此你可以得到最新,最实时的,最前卫的DNN设计及其同行者的咨询,最优秀的DNN网站资源. 访问Best Web Gallary请点击:http://www.dnnsun.com/Home/ShowCase.aspx