浏览模式: 普通 | 列表
4月, 2006 | 1 | 2 | 3 | 4 | >

对几个CMS的粗浅感受

[ 2006-04-09 15:20:24 | 作者: admin ]
对几个CMS的粗浅感受  

--------------------------------------------------------------------------------

CMS,内容管理系统啦,范围可以很广的,能管内容的都算。看到Linuxsir正在为升级系统征求意见,不免对这些系统发点粗浅的议论:

1. Nucleus,也是内容管理,比较方便地分类,发表,开多个站点。程序构架优秀,二次开发容易上手,非常好。但内容管理上功能并不全,还是当个优秀的Blog好了,也很有前途的。

2. Tavi,算是wiki系统,小巧易用,但现在开发有点停顿的意思。如果没有太多要求,做Wiki很好。但如果看过Moinmoin或wikipedia用的Mediawiki,估计会被后两者吸引。

3. PHPNuke,这个用得很多,功能也多。但有一个特点,就是乱,...

阅读全文…

HTML之Marquee

[ 2006-04-09 02:03:36 | 作者: admin ]
HTML之Marquee
[ 2005-12-08 | From: 本站原创 | ]字体转换: 大 | 小 | 繁 | 简
Note.该标签不是HTML3.2的一部分,并且只支持MSIE3以后内核,所以如果你使用非IE内核浏览器(如:Netscape)可能无法看到下面一些很有意思的效果
该标签是个容器标签
语法:

<marquee></marquee>


以下是一个最简单的例子:


[ Copy ] [ Run ] [ Save ]

<marquee><font size=+3 color=red>Hello, World</font></marquee>


下面这两个事件经常用到:
onMouseOut="this.start()" :用来设置鼠标移出该区域时继续滚动
onMouseOver="this.stop()":用来设置鼠标移入该区域时停止滚动
...

阅读全文…

Asp.Net 动态生成验证码

[ 2006-04-09 01:49:29 | 作者: admin ]
我们在设计用户登录模块时,经常会用到验证码,可以有效地防止黑客软件的恶意破解,现公开我常用的验证码的源代码,生成效果如图: 。

      使用方法:
                 1、在Web项目中添加一个类,如“CreateImage.cs”,然后将我公布的源代码Copy进去;
                 2、再新建一个Web窗体,如“Image.aspx”,在Page_Load中加入代码 “CreateImage.DrawImage ();”当然别忘了加上对类的引用哦!!
                 3、在页面的合适位置上(你想放验证码的位置)上加上如下javascript代码就OK 了,
                    <SCRIPT LANGUAGE="JavaScript">
                    <!--
                    var numkey = Math.random();
...

阅读全文…

Asp.Net常用函数库

[ 2006-04-09 01:47:57 | 作者: admin ]
发部一个自已常用的 Asp.Net常用函数库,包括如下常用函数:

把普通字符转换成网页标签
网页标签转换成空白
WinForm 和 WebForm 字符格式转换
计算文本长度,区分中英文字符,中文算两个长度,英文算一个长度
截取用户输入长度的文本,并再文本后加‘...’ [中文算两个长度,英文算一个长度]
用于防止SQL注入式攻击检测
去掉文本里的网页标签代码
转换SQL语句插入操作或还原取出文本时可能出现的关键标点符号"'"
新建一个空文件夹
新建一个空文件
删除一个文件夹
删除一个文件
移动一个文件夹
向文件写入文本
获取文件类型
获取文件大小
获取文件最后一次修改时间
跟据当前时间加上四位随机数生成一个文件名
点击下载此文件
我们在做WebForm开发的时候经常会用到模版,可以方便地生成静态html页面,提高网站的访问速度,普通的模版应用有一定的局限性,一旦数量一多,势必会降低计算机的执行效率和代码的冗余度;但如果使用正则表达式,实限起来就非常容易,C#对正则表达式的支持非常好,不管html代码里有多少个模版标签,我们都可以一次把它全部取出来;当然,模版的写法也要有一定的规则(这很容易做到)!
        例如:我们在代码里面都按 $i_*(n1,n2,n3,n4,n5)$ 这样的标签定义(*为任意字符串),里面的[n1,n2,n3,n4,n5]为任意数字或字符,可以是文章的ID、截取字符串的长度、记录数等信息。
        然后我们在程序里面可以用如下正则表达式获取模版标签:
      //正则表达式
    string pat=@"\$i_.+?\([0-9]+,[0-9]+,[0-9]+,[0-9]+,[0-9]+\)?\$";
...

阅读全文…

《Effective C# 精髓》摘选

[ 2006-04-09 01:45:20 | 作者: admin ]
Item 1: Always Use Properties Instead of Accessible Data Members

  这个是地球人都知道的条款了。你需要记住,属性是类的外部接口部分,而(公共)成员却是内部实现。如果把内部实现暴露给外部,对于以后类的实现变更是非常不利的。
  Item 2: Prefer readonly to const

  这个条款需要注意一下几点:

  (1)const在编译期发生作用,即编译器会将所有的const成员置换成对应的常量“值”。

  (2)即使引用其他程序集中的const成员,本程序集中也是硬编码了const成员的值。

  (3)readonly在运行期被评估,所以其性能比const稍差,但是灵活性更高。

  (4)const的值必须在编译期决定,所以不能使用new为其赋值。

...

阅读全文…

怎样在.Net下读取用户配置数据

[ 2006-04-09 01:43:43 | 作者: admin ]
在.Net环境中,ConfigurationSettings对象给了我们一个appSettings属性,这个属性是一个NameValueCollection,因此,我们可以用appSettings[key]的方式来存取appSettings节次的配置信息,如下所示:

<appSettings>
        <add key="TemplateDir" value="~/Templates" />
</appSettings>

        我们直接可以用System.Configuration.ConfigurationSettings.AppSettings["TemplateDir"];


        实质上,就算不是appSettings节次的配置内容,你自己定义的任意配置节次也可以这样做,如下所示:


    <configSections>
...

阅读全文…

在.Net下发送邮件(C#)

[ 2006-04-09 01:41:46 | 作者: admin ]
在这里使用的是.net自带的邮件发送类(System.Web.Mail),它可以满足用户的一般要求,并支持服务器验证,使用起来也很方便!

          在使用之前先导入命名空间:"using System.Web.Mail;",具体代码如下:

MailMessage msg = new MailMessage();
//发送方地址(如test@163.com)
msg.From = "";
//接收方地址(如test@163.com)
msg.To = "";
//正文内容类型
msg.BodyFormat = MailFormat.Html;
//正文内容编码
msg.BodyEncoding = System.Text.Encoding.Default;
//主题
msg.Subject = Subject;
//内容
msg.Body = Body;
...

阅读全文…