MVC三层架构在ASP中的应用
前段时间读了不少关于MVC的文章,试着在ASP中应用了一下,发现对于小程序,代码量会大幅度增加,但是逻辑清晰,数据封装很合理,以前需要仔细规划的代码复用竟然成了理所当然的事情。
所谓MVC,即Model(模型),View(视图),Control(控制)三层架构。各部分各司其职,Model即底层构架,包含与数据库连接的部分,View即UI展示部分,与用户直接打交道,Control即控制层,负责接收View的请求并做适当预处理后交由Model处理,然后接收Model返回值并做格式化处理返回View层。简单地说,Model直接与系统底层如数据库等打交道,而不管数据出去后如何用,View只负责请求和展示数据,而不管详细流程,Control分别与View和Model打交道,并负责数据的验证、格式化等工作。
写了一个获取用户资料的ASP中应用:
先写Model层,定义数据库地址,打开连接数据库,获取记录。
在写Model层之前定义了两个类:Cls_Config整站设置,包括数据库地址;Cls_DatabaseModel,负责打开关闭数据库连接。
Cls_ConfigModel.asp代码如下:
<%
Class Cls_ConfigModel
Private i_datapath,i_sitename,i_sitedomain,i_mastermail
Private Sub Class_Initialize()
i_datapath="mytdata\mytdata2.mdb"
i_sitename="中国地质大学(武汉)民族乐团官方网站"
i_sitedomain="www.cugmyt.cn"
i_mastermail="master@cugmyt.cn"
End Sub
Public property get DataPath
DataPath=server.MapPath(i_datapath)
End property
Public property get SiteName
SiteName=i_sitename
End property
Public property get SiteDomain
SiteDomain=i_sitedomain
End property
Public property get MasterMail
MasterMail=i_mastermail
End property
End Class
%>
Cls_DatabaseModel.asp代码如下:
<!--#include file="cls_configmodel.asp" -->
<!
相关文档:
应用程序域是通过CLR强制界定的确保应用程序间不相互影响的地址空间,它具有以下特征
1.一个独立的Web应用程序的所有Web页共享相同的内存资源,例如全局的应用程序数据,每个用户的Session数据以及缓存数据。这些信息不能被其他的ASP.Net或ASP应用程序直接访问。
2.一个独立的Web应用程序所有Web页共 ......
<%
Response.Buffer = true
Response.Clear
dim url
Dim fso,fl,flsize
dim Dname
Dim objStream,ContentType,flName,isre,url1
Dim strFileName
strFileName=replace(replace(Request("file"),"\",""),"/","") '传参
strFileName="/files/"&strFileName ' 改成你你文件的存 ......
本文链接:http://www.oversteper.com/wprogram/asp/826.html
ASP 定义常量的方法
常量:用一种名称代替数字和字符串,且其值保持一直不变。
在 VBscript 中,可以用 const 语句来定义常量。
常量分数字型和字符串型。
表示日期的常量写在两个 # 之间。
示例:
以下为引用内容:
<%@LANGUAGE="VBSCRIPT" CODEPAG ......
本文链接:http://www.oversteper.com/wprogram/asp/830.html
do ... loop 语句两种格式的示例
do whil ... loop :
以下为引用内容:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt ......
1、控制"纵打"、 横打”和“页面的边距。
(1)<script defer>
function SetPrintSettings() {
// -- advanced features
factory.printing.SetMarginMeasure(2) // measure margins in inches
factory.SetPageRange(false, 1, 3) // need pages from 1 to 3
factory.printing.printer = "HP De ......