.net/c# - 文章列表
-
计算页面执行时间
以下类定义了一个计时器,将你的执行脚本加入到”容器”内即可(请看注释) \n<?\nclass timer\n{ var StartTime = 0;\nvar StopTime = 0;\nvar TimeSpent = 0;\nfunction start(){\nthis->StartTime = microtime();}function stop(){this->StopTime = microtime();}function spent(){if (this->TimeSpent) {return this->TimeSpent
-
任意字符集下正常显示网页
通常情况下,我们的网页要指定一个编码字符集,如 GB2312、UTF-8、ISO-8859-1 等,这样我们就可以在网页上显示我们指定编码的文字了。但是我们很可能会遇到这种情况,那就是我们可能希望在 ISO-8859-1 编码的网页上显示汉字,或者在 GB2312 编码的网页上显示韩文等。当然一种解决办法就是我们不用 ISO-8859-1 或者 GB2312 编码,而统统都采用 UTF-8 编码,这样我们只要在这种编码下,就可以混合显示各国文字了,这是现在很多网站采用的方法。\n而我这里所说的并非上面这种方法,因为上面这种方法必须要指定字符集为 UTF-8 才可以,一旦用户手工指定为其他字符集
-
一个完整、安全的用户登录系统
在使用PHP编程的时候,我有一个习惯,不太喜欢使用现成的库文件,例如PHPLib或者其它类似的库,在这个系统中,我也打算自己写一个库文件,它需要处理认证、确认email,更新帐号(密码,email)等事情。 为了在保证该系统安全的同时,不会加重我现有数据库的负担。因此这个新的系统要依赖cookies。这确实是一个两难的选择,因为如果只是设置一个用户名的cookie,是很不安全的,这行不通,但从数据库的负担考虑,我也不能加入一个简单的无序码而交由我的数据库来进行验证。\n 解决的方法是同时设置两个cookie,一个是用户名的cookie,一个是无序码的cookie。这个无序码实际上是由用户名和
-
浅谈ASP.NET内部机制(六)
浅谈ASP.NET内部机制(六)前言:大家都听说过也用过ASP.NET中的视图ViewState,到底ViewState本质上到底是什么东西?为什么ASP.NET中没有他不行?下面就来谈谈。。。我们一般在开发面向对象程序的时候,我们都是用对象保存数据的,比如用对象的属性,字段来保存对象的状态。当调用对象的方法时,就可以改变对象的状态。释放对象后,对象的状态就消失。这点大家都熟悉。在开发桌面程序的时候,没有什么问题,以为对象都一般在本地的内存中,直到不再用那个对象,我们就销毁它。但是在Web程序中,问题就大了,比如我们请求一个页面的时候,我们希望把上一个页面的状态保存下来,因为下一个页面要用到上
-
从零开始学习ASP.NET MVC:View/Model 全解(四)
一.摘要\n本文讲解在Action中向View传递Model的几种方式.以及View获取Model以后如何编写显示逻辑.还详细的介绍了ASP.NET MVC框架提供的Html Helper类的使用及如何为Html Helper类添加自定义扩展方法.\n二.承上启下\n上一篇文章中我们学习了Controller处理一次请求的全过程.在Controller的Action中, 会传递数据给View,还会通知View对象开始显示.所以Model是在Action中获取的, 并由Action传递给View. View对象接到Action通知后会使用自己的显示逻辑展示页面.下面首先让我们学习如何将Model
-
浅谈ASP.NET内部机制(七)
浅谈ASP.NET内部机制(七) --- 视图状态实战篇前言:本篇讲解与视图ViewState相关的知识,包括IStateManager,自定义转换器TypeConvert,以及和视图功能相同的控件状态。可以说本篇是对保存状态有关知识的总结,代码也详细的给出。。。。。。。。自从上次写了有关视图的文章后,收到了很多朋友的邮件,很感谢大家的支持:)很多朋友都说要求说说实践性更强的东西,所以本篇就进一步的来谈谈视图(不仅仅只是视图,而且在ASP.NET中的状态保存的话题)。首先希望大家对自定义控件有一定的了解。大家可以去参看我的控件开发系列。首先我看从一个简单的控件开发来谈起,我们在ASP.NET有
-
Asp.Net MVC:打造表单验证框架(1)
在Web开发中,表单提交算是一种很常见的从客户端获取数据的方式了,然而,用户的行为永远都是无法预料的,为此,我们在程序中不得已必须对用户输入的数据进行严格效验,在WebForm时代我们常用的手段是验证控件,但是到了Mvc时代,再使用控件变得困难了,因此我们必须找到新的方式来解决这个问题. 在实际使用中,我们可以考虑多种形式来进行这一验证(注:本文目前只研究服务器端验证的情况),最直接的方式莫过于对每个表单值手动用C#代码进行验证了,比如:\n<!–\nCode highlighting produced by Actipro CodeHighlighter (freew
-
Asp.Net MVC:打造表单验证框架(2)
题外话:为了不再误解,关于造轮子的事情在本篇开头再次重点提出,如果您觉得再造轮子的人是傻瓜,那直接无视我以及我的附带品好了.本文的重点并不是做了一个验证框架,真要如此,直接给出代码不就结了,或者直接来篇如何使用DataAnnotations即可,何必长篇大论来一通,如果认真看了本文就可以知道本文是讲解了如何使用TDD的方法来实现一个验证框架,同时尽可能做到通俗易懂,当然,这并不是说本文造的轮子就没有价值了,别人的总是别人的,验证框架并不是一个很复杂的东西,一个人做出一个完善的也不是什么难事,也许在某些时候土炮就比洋炮好用也说不准,最后,希望各位手下留情. 说了一通废话,下面开始正文了,本
-
浅谈ASP.NET内部机制(八)
浅谈ASP.NET内部机制(八)前言:之前几篇文章写了有关视图的知识,也讲述了如何实现IStateManager接口。本篇将讲解如何实现自定义转换器。当然了,有大量的代码演示!本篇算是有关视图机制的终结篇,还会讲解有关ControlStatel控件状态的实现。有个小插曲,其实之前我已经把文章写了一大半,不知道怎么回事,IE出了问题,自动关闭了,真是心痛阿,现在得重写一遍。我想每个写博文的朋友都有这样的经历吧,写一篇文章真的很不容易!在上篇中,我们讲解了如何在一个自定义控件中保存自定义类的属性,我现在再次把代码贴出来,免得大家去翻页。Code\nusing System;using System
-
ASP.NET自定义控件:实现分页功能的DataList(10)
1. 引言在ASP.NET中DataList可以实现数据展示,我们可以通过定制其模版实现丰富的格式,但是美中不足的时DataList默认情况下不支持分页,我们当然可以编写一个用户控件以实现分页功能,但是这种方案仍然不是很好,我们希望像使用普通ASP.NET服务器端控件一样,只需要放置一个DataList并设置分页样式就可以输出分页链接。 \n在上次任务中我们创建了DataPager类将创建分页的操作从GridView分离出来,本次任务将尝试重用DataPager类为DataList增加分页特性。 \n2. 分析开发自定义GridView控件时,可以通过向控件中加入具有特定CommandName