aspmvc开发框架

app.cls.asp
<!--#include file="EasyIDE.asp"-->
<%
	'*****************************************************
	' ASPMVC开发框架
	' mengdejun
	' 20101218
	' 该类需EasyIDE类库(include,ob_get_contents)支持
	'*****************************************************
	
	CONST MODULE_PARAM="m"					'//模块查询参数
	CONST CONTROLLER_PARAM="c"				'//控制器查询参数
	CONST ACTION_PARAM="a"					'//操作查询参数
	CONST MODULE_LIMITER="_"				'//嵌套模块分隔符
	CONST CONTROLLER_EXTENSION=".asp"		'//控制器拓展名
	Dim M				'//模块
	Dim C				'//控制器
	Dim A				'//操作
	Dim T				'//目标控制器文件
	Dim Is_App			'//是否为控制器支持类
	Class App
		Private DM		'//默认模块
		Private DC		'//默认控制器
		Private DA		'//默认操作
		Public Sub Class_Initialize()
			DM=""
			DC=""
			DA=""
			Is_App=True
		End Sub
		
		Public Sub Class_Terminate()
		End Sub
		
		'//执行派发方法
		Public Sub Dispatch()
			M=IfReturn(IsEmpty(request(MODULE_PARAM)),DM,request(MODULE_PARAM))
			C=IfReturn(IsEmpty(request(CONTROLLER_PARAM)),DC,request(CONTROLLER_PARAM))
			A=IfReturn(IsEmpty(request(ACTION_PARAM)),DA,request(ACTION_PARAM))
			Call Parse
			Call Run
		End Sub
		
		'//执行重定向
		Public Sub Redirect(ByVal Param1,ByVal Param2,ByVal Param3)
			M=Param1
			C=Param2
			A=Param3
			Call Parse
			Call Run
		End Sub
		
		'//赋值
		Public Sub Assign(ByRef Vara,ByVal Varb)
			If IsObject(Varb) Then
				Set Vara=Varb
			Else
				Vara=Varb
			End If
		End Sub
		
		'//执行动作
		Private Sub Run()
			include(T)
		End Sub
		
		'//解析目标,支持嵌套模块,例:?m=module_module_a&c=a&a=show
		Private Sub Parse()
			If Not IsEmpty(M) Then
					Dim ATem,MTem,MArray
					MArray=Split(M,MODULE_LIMITER,-1,1)
					For Each ATem In MArray
						MTem=MTem&"/"&ATem
					Next
					M=Mtem
			Else
				M=""
			End If
			IF IsEmpty(C) Then Exit Sub
			T="."&M&"/"&C&CONTROLLER_EXTENSION
		End Sub
		
		'//默认模块
		Public Property Let DefM(ByVal MM)
			DM=MM
		End Property
		
		'//默认控制器
		Public Property Let DefC(ByVal CC)
			DC=CC
		End Property
		
		'//默认操作
		Public Property Let DefA(ByVal AA)
			DA=AA
		End Property
	End Class
	
	'//三元操作符
	Function IfReturn(ByVal Expre,ByVal VarA,ByVal VarB)
		If Expre Then
			If IsObject(VarA) Then
				Set IfReturn=VarA
			Else
				IfReturn=VarA
			End If
		Else
			If IsObject(VarB) Then
				Set IfReturn=VarB
			Else
				IfReturn=VarB
			End If
		End If
	End Function
	
	'//控制中可调用此函数已避免二次重复输出
	Function Template(ByVal f)
		Template=ob_get_contents(f)
	End Function
	
	'//框架实例化
	Dim web:Set web=new App
%>

   Easyasp下载

你可能感兴趣的:(C++,c,框架,C#,asp)