阿不

用勤奋寻找未来

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  183 随笔 :: 0 文章 :: 2463 评论 :: 75 引用

置顶随笔 #

     摘要: 这是一个读取纯真IP数据库的公用组件接口,我是通过luma的《纯真IP数据库格式详解》了解了纯真IP数据库数据格式,并且基于网络上的一个IPLocation.dll源码的基础改编而来。我为什么要改编这个组件呢?因为我看到这个组件在使用过程中,每次都要打开文件流,并且整个接口使用静态的属性。并不适合Web环境下,多线程并发查询的需求,并且在性能上也不是最优。有了luma的格式详解,和现有的IPLoc...  阅读全文
posted @ 2008-06-19 20:25 阿不 阅读(6304) | 评论 (34)编辑

     摘要: 版权声明:该开源开发包,是基于LumaQQ的基于等价移植到.NET平台下,开发者不直接参与QQ协议的分析工作,移植到.NET平台纯粹是为了方便广大.NET开发者学习和研究之用,并且没有产生任何直接的经济效益,并且纯粹是个人的技术学习研究行为,与本人所在单位没有任何关系。此开发包的用户在使用过程产生的效益和涉及的法律责任与本人没有直接关系。如果影响到您或您的公司利益,敬请谅解并且与我联系,本人会第一...  阅读全文
posted @ 2008-03-11 19:31 阿不 阅读(15800) | 评论 (186)编辑

     摘要: 最近使用DotMSN开发MSN机器人,由于使用的是代理上网,在使用中发现虽然DotMSN支持代理,但是好像是支持的不够彻底,使用Socks5代理只能登录,并不能发送消息。检查了代码,发现在发送信息的SocketClient并没有使用指定的代理服务器。这个版本修复了这个问题,并且通过代理已经可以正常使用DotMSN的各项功能。 另外,DotMSN 2.0.2中在登录后在XihSolutions.Do...  阅读全文
posted @ 2008-01-07 17:42 阿不 阅读(2774) | 评论 (32)编辑

     摘要: 在Teddy 的博客《NBearMapping - 开源通用对象映射组件v1.0.0.2 beta - 支持枚举类型字段》,介绍了NBear 的一些功能。由于这将是NBearV4中的一个基础组件,所以对性能的要求比较严格。原先的性能相对还是比较难以满足要求,在此基础框架思路下,经过近一段时间的开发,终于完成了NBearMapping新版本的开发,这个版本的主要功能仍然不变,在此基础上新增了: 1、...  阅读全文
posted @ 2007-12-15 20:12 阿不 阅读(3690) | 评论 (15)编辑

2010年1月7日 #

     摘要: ASP.NET中,所有的上下文对象(HttpContext,HttpReqeust,HttpResponse…)都没有进行抽象,而且它们都是自我封闭的对象,我们无法对它进行扩展和修改。虽然它们都提供公有构造器,我们可能也可以追溯到请求管道的源头,去自己实例化HttpContext,可是它们的大部分方法都是封闭的,不可重写的,这样使得我们在做多工作的时候无法称心如意,甚至于四处碰壁。 ASP.NET...  阅读全文
posted @ 2010-01-07 16:27 阿不 阅读(1480) | 评论 (4)编辑

2009年12月31日 #

     摘要: 似乎在昨天还是想要补上2008年的总结,转眼间2009也已经走到尽头了。这回不能再犯老错误了,是该好好回顾总结一下过去一年的得失。过去的一年,是忙碌的一年,实现了职业生涯第一次转变的目标,不再安逸下去。回首这一年,关键词是“开源”,开源伴随着自己职业生涯的成长过程,当然以后仍然会继续参与开源事业,同样也希望开源能促进我的职业生涯有更大的突破,所以一切还得从开源说起。 以前,我总会把我平常工作的一些...  阅读全文
posted @ 2009-12-31 15:24 阿不 阅读(2766) | 评论 (20)编辑

2009年12月26日 #

     摘要: Kooboo的一个设计初衷是跨数据库,特别是提供对轻量级数据库,文件型数据库的支持,我们总是希望给用户提供最简单,最少配置的产品。我们选择了Entity Framework来作为我们的ORM框架,隔离数据库的不同实现,以最大减少我们在跨数据库时的代码和架构复杂性。Entity Framework目前也已经提供了各种数据库的Provider,理论上是可以很容易做到跨数据库的实现。 在Kooboo 1...  阅读全文
posted @ 2009-12-26 15:47 阿不 阅读(1263) | 评论 (8)编辑

2009年11月8日 #

     摘要: 考虑到这篇文章会有很多截图,并且更注重实际操作,考虑再三,还是录制了一个视频来演示如何使用Kooboo来开发网站,并且实现继承。 由于找不到一个好的视频空间,所有的视频空间上传后都会造成比较严重的失真,所以提供视频下载地址,有兴趣的朋友可以下载。我们正在准备一些视频教程,在下周会上传到Koobo官方站点。最近在我博客也收到了一些朋友的建议,毕竟在这里会比较散乱,所以如果您有什么意见或建议请到:官方...  阅读全文
posted @ 2009-11-08 11:42 阿不 阅读(773) | 评论 (9)编辑

2009年10月25日 #

     摘要: 要介绍一个全新的产品,仅仅靠文字描述是远远不够的,从本篇开始,将会以图文并茂的方式来展开Kooboo的各个功能点。在这一篇中,我将会带大家来体验使用Kooboo如何来创建一个简单的站点。本篇的目的,并不拘束在各个功能的技术细节,而是希望以一个全景的方式,让大家对Kooboo有一个整体的印象。 知识准备 从实践角度上,创建一个Kooboo站点,主要有以下一些主要步骤: 创建一个新的站点,新的站点可...  阅读全文
posted @ 2009-10-25 17:01 阿不 阅读(600) | 评论 (9)编辑

     摘要: Kooboo的定位是一个CMS,内容管理平台,从更严格意义上来说,它更应该网站快速开发平台。针对一般网站开发过程的分析和提炼,着重在解决网站的一般需求,提出一套快速开发网站的理念和方法。在这些理念和方法的指导下,来进行网站的开发,规范开发过程,提高开发效率,减少维护成本,提高网站质量。 我们在开发一个网站,一般会面对如下问题: 内容存储,这是一个基础性问题。内容是整个网站的肉体,也是灵魂,失去了内...  阅读全文
posted @ 2009-10-25 15:18 阿不 阅读(722) | 评论 (3)编辑

2009年9月15日 #

     摘要: 在Kooboo中使用了Entity Framework作为持久化框架,但由于EF1.0并没有提供完整缓存解决方案,一直以来都在为数据缓存而烦脑,在没有找到合适解决方案的情况下,采取了临时的解决办法:直接缓存实体。但是由于Entity实体都是带状态的,并且都与ObjectContext有间接的反向引用,缓存带状态的实体,会造成对象上下文混乱和连接资源的无法被正确释放。因此缓存的Entity实体,首先...  阅读全文
posted @ 2009-09-15 23:26 阿不 阅读(587) | 评论 (2)编辑

2009年8月17日 #

     摘要: 背景 随着Extjs的不断成熟,它也在不断的被开发人员所接受和使用。Extjs是一个完全的UI框架,它自带的控件已经能很好的满足日常开发的需要,并且它底层仍是以html和样式为基础,在不满意需求特殊需求的情况,我们也非常方便的进行扩展。所以,我一贯的态度是,要使用extjs就要用的彻底,UI部分应该完全使用Extjs来实现,完全摈弃传统的ASP.NET前台模式。当然,现在也有一些把Extjs封装成...  阅读全文
posted @ 2009-08-17 22:38 阿不 阅读(4067) | 评论 (11)编辑

2009年8月15日 #

     摘要: 去年这个时候也是8月份,离开了生活9年的福州来到厦门,已整整一年的时间。离开福州的原因,就是不想让自己在安逸中沉沦下去,需要重新寻找技术的激情。来到新公司后,也开始投入老板梦想中的那个伟大CMS的研发工作,至今仍在不断的忙碌。当时的我,对CMS的概念的并不是特别理解,时至今日,我仍然无法很清楚的定义什么才是CMS。CMS是Content Managment System的缩写,意为内容管理系统,但...  阅读全文
posted @ 2009-08-15 00:47 阿不 阅读(3065) | 评论 (50)编辑

2009年4月22日 #

     摘要: System.Web.Compilation.BulidManager负责站点的动态编译,所有的页面、用户控件、和所有的ASP.NET特殊目录,都会在运行时被BuildManager编译和处理,也包括Bin目录。我们知道在ASP.NET中,所有的页面和控件都包括.ASPX和后台代码文件,除了代码文件在编译时会被静态编译成一个类型外,.ASPX文件在运行时也会被动态编译在一个动态类型中,以便写在.A...  阅读全文
posted @ 2009-04-22 09:57 阿不 阅读(633) | 评论 (1)编辑

2009年4月9日 #

     摘要: 利用IIS带的SMTP虚拟服务器,可以匿名发送邮件,并且通过telnet就可以发送,一直只是看过别人做过,并且看过很多遍,自己没有尝试过还是无法即拿即用,今天还是亲手尝试了一下,并记录以下的发送步骤。 使用Telnet发送邮件: 打开cmd命令行 输入telnet 127.0.0.1 25,连接本地邮件服务器 输入HELO,建立会话,返回250成功代码。 输入MAIL FROM:youname@s...  阅读全文
posted @ 2009-04-09 15:33 阿不 阅读(1057) | 评论 (3)编辑

2009年4月7日 #

     摘要: CS-Script是基于ECMA CLR标准之上的动态编译C#脚本的编译引擎。利用CS-Script可以在系统中动态编译一段C#脚本,并以静态函数或实例对象的形式使用。放在一个系统框架中,可以起到部分动态语言的效果。先看看它的使用:Assembly assembly = CSScript.LoadCode( @"using System; public class Script { public ...  阅读全文
posted @ 2009-04-07 22:35 阿不 阅读(3639) | 评论 (29)编辑

     摘要: 刚开始入门时是在别人的技术博客里学习技术,那时候起步相对较晚,毕业后的很长一段时间才知识什么是.NET,所有技术对自己来说都是新知识,要学习的太多了。而通过技术博客还可以不断的了解到自己不曾知识的技术,通过别人的辩论也可以让自己可以有一个辩证的观点来认识某一种技术的优缺点,从而帮助自己逐渐形成相对客观的观点来看待每一种技术。社区的交流几乎是自己技术生涯中,最重要的一个老师。大家可能都认为技术书籍才...  阅读全文
posted @ 2009-04-07 19:06 阿不 阅读(745) | 评论 (2)编辑

2009年2月12日 #

     摘要: 也许你知道,修改站点的某些特定文件和目录会导致整个站点重启或者重新编译。也许你不注意,你不会知道删除或重命名站点下的任意目录,会导致整个站点重启(添加目录并不会)。这个问题其实是很多Session丢失的根源,比如《关于ASP.NET 2.0的目录结构变化导致Session丢失的问题》,同样你还可以找到很多这样的例子。 这个其实是ASP.NET 2.0的一个“精心”设计,因为在很多情况下。ASP.N...  阅读全文
posted @ 2009-02-12 13:15 阿不 阅读(2254) | 评论 (13)编辑

     摘要: 原来一直不注意,在一直重构中无意中发现,Reqeust.Form的Key不区分大小写。想想有道理,在Web请求中,URL是不区别大小写的,那么Request.Form的Key也不应用区别大小写。那么如果你想通过Request.Form来取得ASP.NET Server控件的值的话,一样也不需要注意大小写。 同理,Reqeust.QueryString也是不区别大小写的。  阅读全文
posted @ 2009-02-12 12:52 阿不 阅读(866) | 评论 (1)编辑

2008年11月19日 #

     摘要: 在安装MVC,ASP.NET AJAX 后都会在新建工程列表中出现一些新的项目模板,通过这些项目模板创建工程后,都会为我们做好一些这些工程需要的配置,或者干脆就创建一些示例工程,为我们简化了很多配置的工作,并具有一些的学习向导作用。在很多情况下,也许我们也需要自己创建这样的项目模板,其实步骤非常简单,下面我们就通过一个简单的例子来说明如果创建项目模板,并创建安装文件。 项目模板的创建非常简单,我们...  阅读全文
posted @ 2008-11-19 23:19 阿不 阅读(4074) | 评论 (9)编辑

2008年11月18日 #

     摘要: 作为一个从事IT行业的专业技术人员 应该非常清楚数据的重要性 而个人数据基本都是存在单机硬盘上, 并不会做经常做备份 即使做了备份,而不会去注意定期去更新和维护历史版本 毕竟个人不比企业 这次的硬盘的教训深深的触动了我可以说我遇到了最坏的情况 最重要的数据都是在D盘 而偏偏是D盘的磁道出现了两个坏道 使整个系统无法启动 并且在正常的操作系统环境下 D盘可以认到,但是无法读取和拷贝数据 好在最后使用...  阅读全文
posted @ 2008-11-18 20:12 阿不 阅读(1001) | 评论 (1)编辑

2008年10月16日 #

     摘要: 在一些场合,我们可能需要对业务实体进行版本控制。类似于源码管理工具一样,可以查看历史版本,可以回滚,可以Lock,一个业务实体对象,同一时刻只允许一个人进行更新操作。为了实现信息的可追溯性,这些功能应该是必不可少的。只是我们该在哪里去控制实体对象的版本呢? 我们希望将版本控制的功能,独立于某一个具体的业务实体,这样才可以实现最大共用和扩展性。显然,要实现这一功能最好的切入点应该是在数据持久层,也就...  阅读全文
posted @ 2008-10-16 23:23 阿不 阅读(2168) | 评论 (4)编辑

2008年10月11日 #

     摘要: 朋友们,我回来了。离开博客园两个多月的时间,这段时间经历了人生第一次换工作,战场也从福州转移到厦门来了。这是一段难忘的经历,离开了生活9年的城市来到一个新的环境,总有太多的不适应。在这段时间自己个人发生了很多乌龙的事情,还好一切都不算太坏,这些不顺的事情也都逐渐的远去了,在这边的生活也慢慢的也开始行成新的规律。 过去的一段时间,由于一些个人事情的牵伴,无法专心投入技术的研究和总结,落下了很多东西,...  阅读全文
posted @ 2008-10-11 00:31 阿不 阅读(1178) | 评论 (17)编辑

2008年7月29日 #

     摘要: 版权声明:该开源开发包,是基于LumaQQ的基于等价移植到.NET平台下,开发者不直接参与QQ协议的分析工作,移植到.NET平台纯粹是为了方便广大.NET开发者学习和研究之用,并且没有产生任何直接的经济效益,并且纯粹是个人的技术学习研究行为,与本人所在单位没有任何关系。此开发包的用户在使用过程产生的效益和涉及的法律责任与本人没有直接关系。如果影响到您或您的公司利益,敬请谅解并且与我联系,本人会第一...  阅读全文
posted @ 2008-07-29 23:24 阿不 阅读(4536) | 评论 (21)编辑

2008年7月9日 #

     摘要: 在ASP.NET MVC中,如何来实现表单的验证与授权访问呢?至少在CTP3中,还没有一个官方的解决方案。ASP.NET WebForm的表单验证和授权机制是否适合在ASP.NET MVC中使用呢?带着这些问题来进入我们今天的主题。 在ASP.NET WebForm的架构下,我们可以通过一定的配置即可实现用户身份验证和授权。特别是在ASP.NET 2.0的Membership功能的支撑下,可以做到...  阅读全文
posted @ 2008-07-09 22:22 阿不 阅读(3563) | 评论 (15)编辑

     摘要: 关于WebForm与MVC的讨论,年初的时候已经有一段很长时间的讨论了。我无意再去争论哪种架构模式更适合我们做开发,不管是哪个领域,技术的存在都有其不同的历史意义和市场价值。我更关注的是,在合适的机会去掌握更多的技术,从技术实现的角度来寻找当前阶段最为顺手的一种做事方法。所以请注意,在这里不讨论WebForm与MVC的优劣,适用场景。在这里只有ASP.NET WebForm与ASP.NET MVC...  阅读全文
posted @ 2008-07-09 13:40 阿不 阅读(3482) | 评论 (18)编辑

2008年6月26日 #

     摘要: 今天在Visual Studio 2008中引用WebService,出现这样的错误提示: The web services enumeration components are not available. You need to reinstall Visual Studio to add web references to your application. 在中文社区中没有找到相关的解决办...  阅读全文
posted @ 2008-06-26 11:57 阿不 阅读(1176) | 评论 (0)编辑

2008年6月19日 #

     摘要: 这是一个读取纯真IP数据库的公用组件接口,我是通过luma的《纯真IP数据库格式详解》了解了纯真IP数据库数据格式,并且基于网络上的一个IPLocation.dll源码的基础改编而来。我为什么要改编这个组件呢?因为我看到这个组件在使用过程中,每次都要打开文件流,并且整个接口使用静态的属性。并不适合Web环境下,多线程并发查询的需求,并且在性能上也不是最优。有了luma的格式详解,和现有的IPLoc...  阅读全文
posted @ 2008-06-19 20:25 阿不 阅读(6304) | 评论 (34)编辑

2008年5月31日 #

     摘要: 在AJAX应用环境中,由于安全的原因,浏览器不允许XMLHttpRequest组件请求跨域资源。在很多情况下,这个限制给我来带来的诸多不便。很多同行,研究了各种各样的解决方案: 1.通过修改document.domain和隐藏的IFrame来实现跨域请求。这种方案可能是最简单的一种跨域请求的方案,但是它同样是一种限制最大的方案。首先,它只能实现在同一个顶级域名下的跨域请求;另外,当在一个页面中还包...  阅读全文
posted @ 2008-05-31 21:38 阿不 阅读(4724) | 评论 (15)编辑