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

DNN使用及思考

对DNN的使用经验(包括核心模块的使用教程)及其对DNN在国内运用的一些零碎思考,让DNN能够真正的火起来

New Recommedation Module Released ( v1.1 )

This is a standard dotnetnuke module which can be use to invite friend or tell friends about the website information. Those information may be useful for the users' friends. we can call it "Email Friend" or "Invite your friends" or something similiar one. Right now it support the template engine so you can utilize the token mechanism to implement some custom defined email message.
Please visit the source code in codeplex.com: http://www.codeplex.com/Recommendation
v1.1:
1) Template engine and Token support( Your Displ ...

"暴力"解决DNN无法登陆的问题

大家也许看了我之前的一篇文章讲述如何定制DNN登陆页面的文章: 如何定制登陆页面,  然后尝试新建一个页面测试一下, 最后也许误删了该页面的Account Login模块(登陆模块)而导致了你的站点无法登陆, 这时我们怎么回滚这些设置呢? 遗憾的是, DNN并没有对此类问题提供什么好的操作界面或解决方案, 最后还得我们这些DNN Fans(Developer)来挖掘问题的出路和解决方案. 我想大家第一想到方案应该就是直接暴力修改数据库了, 对, 我想在此能分享的也就是暴力解决方案, 其中的原理很简单, 因为DNN默认登陆Url一般可通过这样得到http://yourwebsite/default.aspx?ctl=login (也是原始url, 没有任何Url Rewrite, 如果你深入研究会发现这一页面或是首页或是当前页面), 如果你按照我前边文章定制了登陆页面的话, 那无非就是Portal 的属性LoginTabId 修改为新的页面的TabID( 比如 100, 231), 这时当你点击登陆链接时DNN将根据站点设置跳转到对应的页面, 仔细研读下列代码可知其中奥秘:
 
  1. If PortalSettings.LoginTabId <> -1 And Request.QueryString("override"Is&nb ...

本站最新文章索引

为了便于大家直接查找,在此简单汇总一下本人一直以来对DNN研究的相关文章。另外,大家如果有关于DNN方面的问题,也可以在这里提出,我将尽力为大家解答。
第一部分为DNN模块方面, 主要分享一些在DNN模块需要注意的地方,比如如何利用DNN API,优化开发过程,也就是本人一直宣扬的让DNN“物尽所用”的原则:
1 ) DNN核心API简述
2 ) DNN模块开发之利器篇:七种武器
3 ) 开发DNN模块之Utility
4 ) DNN模块开发应用Ajax之Utility
5 ) 一些DNN须知的技巧
6 ) DNN特性之IMC
7 ) DNN Object Hydrator -- CBO解析
8 ) 王者归来—再谈CBO
9 ) 解析DNN新生宠儿DAL
9 ) 解除DNN的传参枷锁
10 ) 在DNN中处理回车键事件
11 ) 一些关于DNN的FAQs(适合New DNNer)
第二部分为DNN皮肤设计, 主要分享DNN皮肤这一概念背后的一些想法及其由此带来的性能优化问题,希望真正做到扬长避短, 同时也稍微涉及到一下在DNN如何设计专业的,符合标准的,纯CSS的皮肤等话题, 有兴趣者不妨参考参考。
1 ) DNN默认核心CSS继承关系解析
2 ) DNN Style Sheet简要总结
3 ) 解析DNN皮肤级别的doctype声明
4 ) DNN登陆注册链接小变身(Skin Object定制开发)
5 ) 展望DNN皮肤前景及其推荐一些皮肤资源
6 ) DNN Skin旅程之琐碎杂想
第三部分为DNN优化专题, 主要分享一些能提升DNN加载速度,优化DNN本身的架构等经验,同时希望大家能借此对DNN有更一步的深入了解, 因为当你在使用某一样产品时,在知道优势时也不妨多关注存在的缺陷和局限,这样你才能规避风险,找到合适的解决方案。
1 ) 你的dnn站点慢了么?
2 ) 如何在DNN创建类IGoogle效果的模块
3 ) 解析DNN新生宠儿DAL
第三部分为DNN最新资讯, 主要分享最新的DNN新闻资讯(比如最近即将发布的Cambrian版本的DNN 5.0)及其本站的一些更新,其中包括中国DNN联盟的最新活动等等.
1 ) Cambrian和Open Force '08专题(不断更新中,敬请关注) 
2 ) 中国DNN联盟正式成立
还有更多更多内容, 不妨关注一下本站,同时希望大家给予更多反馈, 我们会做得更多,而这一切的前提离不开社区的反馈和你们支持。 :)
最后分享一下我一直以来关注DNN社区所收集的Blog站点,其中包括一些很牛的DNN Fans对DNN的独到见解,还有一些就是DNN官方核心团队成员自己的Blog,毋庸置疑, 其所写的文章或随笔都是很有含金量的.很显然,整个关于DNN内容的社区在不断的壮大(相关文章:DNN Content: The growth of community content about Dotnetnuke ),希望在我们中国也应该不甘落后,奋起直追,也算是奥运期间对奥运精神的借鉴和弘扬吧. (资源下载:DNN Blogs链接)

中国DNN联盟正式成立

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

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

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

不一样的分页算法

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

DNN Skin旅程之琐碎杂想

一直有人跟我提为何不做一些DNN皮肤教程什么的,本人甚为惭愧,当初曾夸下海口说没问题,可一拖再拖,倒不是自己没有时间,只是姑且不论自己设计能力的肤浅,光是那一系列教程制作就得花费不少心思,至少得简单易懂吧?至少得图文并茂吧?至少得符合CSS,W3C吧?我可不想随便拿出一样拷贝别人的皮肤来炫耀自己的水平。故折中的做法只能随时分享自己设计开发皮肤的一些经验或想法,希望能满足部分读者的口味。

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

PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)这一名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。
PNG文件格式保留GIF文件格式的下列特性:
1、使用彩色查找表或者叫做调色板可支持256种颜色的彩色图像。
2、流式读/写性能(streamability):图像文件格式允许连续读出和写入图像数据,这个特性很适合于在通信过程中生成
     和显示图像。
3、逐次逼近显示(progressive display):这种特性可使在通信链路上传输图像文件的同时就在终端上显示图像,
     把整个轮廓显示出来之后逐步显示图像的细节,也就是先用低分辨率显示图像,然后逐步提高它的分辨率。
4、透明性(transparency):这个性能可使图像中某些部分不显示出来,用来创建一些有特色的图像。
5、辅助信息(ancillary information):这个特性可用来在图像文件中存储一些文本注释信息。
6、独立于计算机软硬件环境。
7、 ...

在DNN中处理回车键事件

分享项目开发中的小技巧:如何处理回车键事件, 特别是在同一个页面可能同时存在多个通过回车键提交表单时执行特定的button按钮事件的情况下. 详情请查看原文...

推荐系列: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] 重置皮肤
有时我们在配置皮肤时可能会出现一些莫名其妙的问题,比如找不到皮肤文件,或不小心删除皮肤文件夹可是还有某一页 ...