预编译功能是ASP.NET 2.0中的强大功能之一,可是博客园至今还未能体验它的强大,不是博客园不想用它,只是因为它的要求太高。
     使用aspnet_compiler进行预编译时,它们会编译Web目录中的所有代码文件,只要有一个文件有编译错误,预编译就会失败,也就是说预编译要求Web目录中的所有aspx,ascx等文件都能正常编译,高!要求实在是高!
     在博客园的程序中,有一些暂时不用或者历史遗留的有问题的ascx文件,造成预编译总是失败,由于Skin中存在不少这样的文件,一个一个地找出这些文件很麻烦,而且它们不影响正常运行,也就不想去清理它们,只要预编译时能忽略这些文件就行了,可aspnet_compiler却没考虑到这个很小的要求,他需要一个很干净的Web目录让他干活,可是他为开发人员服务,却不知道开发人员中懒人比较多。对用户需求了解不够,这就是我对ASP.NET 2.0的预编译功能不满的地方。如果aspnet_compiler提供一个命令行参数可以忽略单个文件的编译错误,也就不存在这个问题,或者通过配置文件可以设置不参与预编译的文件或者文件夹。用Visual Studio 2005 Web Deployment Projects进行编译时也存在同样的问题。
posted @ 2006-05-02 23:56 dudu 阅读(2651) 评论(14) 编辑

     随着互联网的普及、互联网上提供的服务越来越多,现在很多人购买电脑的主要用途就是上网。在本同使用的应用程序越来越少了,在本机存储的信息也越来越少了,对大多数人还需要强大、使用不是很方便的PC吗?
     一般人购买电脑的主要用途也就是:上网查询与阅读信息、收发电子邮件、聊天、玩网络游戏、写博客、上论坛发帖子、网上购物,这些都是在使用互联网上的服务,只要能正常使用这些服务,谁还在乎自己的电脑使用的是什么CPU,安装的是什么操作系统,如果有像电视一样简单的机器,买回来就能上网,还有很多人会购买一台复杂的PC吗?购买PC之后,还要购买各种各样的软件,还要安装、设置软件,升级软件,担心病毒与黑客的攻击,这些日常电脑维护给用户带来了很多麻烦。
     在日常的工具中,我们不得不承认,电脑是使用最不方便的,电视机、空调、微波炉这些家电只要稍看一下说明书就会使用。而对于一个从未使用过电脑的人来说,买回一台电脑后,要经过一段时间的学习,并且需要有经验的人的指导才能勉强会使用。
     其实,很多人想要的是一台上网的机器,价格不高,买回来一联上网络线就可以上网,然后在网上选择自己所需的服务,对这台机器本身不需要关心,有问题直接联系生产厂商。
     这个想法很多人都想过,不少公司也尝试做过,什么才能成为现实?我觉得还需要互联网的进一步发展,软件真正成为服务,电脑沦落为人们享受服务的一个简单的工具。

posted @ 2006-05-02 21:15 dudu 阅读(461) 评论(3) 编辑
     在VS 2005中,如果你将一个Web项目从Web Site Project转换为Web Application Projects,你将遇到这样的问题:所有aspx或者ascx文件中,如果引用了自定义控件,并且该自定义控件的代码在Web项目中,那么这些文件都无法成功转换,如果手动进行转换,将出现类似这样的错误提示“Generation of designer file failed: Unknown server tag 'DT:MASTERPAGE'”。 
     例如这样的自定义控件引用代码:
<%@ Register TagPrefix="DT" Namespace="Dottext.Web.UI.WebControls"  %>

注:Dottext.Web.UI.WebControls的代码在Web项目中。
为什么会出这样的问题?我的猜测是VS 2005在进行转换时,如果遇到自定义控件引用,会先在bin目录中加载相应的Assembly,可是原先的Web Site Project并不在bin中生成相应的Assembly,于是就出现上面的错误。
既然是这个原因,我想到的解决方法就是将这些自定义控件代码移到一个单独的项目中,编译成单独的dll文件,但奇怪的是需要将这些自定义控件的命名空间修改一下,然后在引用的地方将Namespace改为修改后的命名空间,才能成功转换。
posted @ 2006-05-02 17:32 dudu 阅读(4337) 评论(12) 编辑