大家都这方面都有什么建议没?
如何更好的封装数据库的低层操作,如何处理错误等等.
这有一个链接,感觉写的不错,但不是很完善,大家可以看一下!
http://dev.csdn.net/develop/article/54/54679.shtm
记得踊跃发言哦^o^
个人认为ASP也只是把代码封装入Class类,封装DLL在ASP中将降低程序的可移植性。
在ASP中写Class分MVC层,一般不用DLL。ASP对于代码的封装性上的确是差强人意,因为封装为DLL的ASP代码多为ActiveX的DLL,这种文件只有到服务器端注册表中注册后才能使用,因此说ASP封装的DLL明显降低了可移植性。
在ASP中写Class分MVC层,一般不用DLL。ASP对于代码的封装性上的确是差强人意,因为封装为DLL的ASP代码多为ActiveX的DLL,这种文件只有到服务器端注册表中注册后才能使用,因此说ASP封装的DLL明显降低了可移植性。
恩,斑斑谈一下您写东西的时候,都是如何做的?
写一个Conn.asp,然后写函数(偶尔用到一些类,例如:分页)
生成页面么?
思想很好啊 你搞asp太可惜了 往上層java或.net發展吧
[此贴子已经被作者于2006-11-1 10:44:26编辑过]
<%
Class SQLControl
'==============================================
'用 途:执行SQL语句:insert,delete,update
'返回值:成功:返回影响的行数
' 失败:返回Null
'说 明:可用IsNumeric()作用返回结果,即可知道SQL语句执行过程中是否有误
'==============================================
Public Function Exec(ByVal sql)
Dim Rows
On Error Resume Next
Call Conn.Execute(sql,Rows,&h0001)
if Err then
Err.Clear()
Exec = Null
else
Exec = Rows
end if
End Function
'================================================
'用 途:用于得到符合条件的记录的数目
'返回值:成功:返回记录集数目
' 失败:返回Null
'说 明:可用IsNumeric()作用返回结果,即可知道SQL语句执行过程中是否有误
'================================================
Public Function GetColumn(ByVal sql)
Dim Column
On Error Resume Next
Column = Conn.Execute(sql,,&h0001)(0)
if Err then
Err.Clear()
GetColumn = Null
else
GetColumn = Column
end if
End Function
'=============================================
'用 途:用于得到符合条件的记录
'返回值:成功:返回二维数组
' 失败:返回Null
'说 明:可用IsArray()作用返回结果,即可知道SQL语句执行过程中是否有误
'=============================================
Public Function Query(ByVal sql)
Dim TempArray,Record
On Error Resume Next
Set Record = Conn.Execute(sql,,&h0001)
if Err then
Err.Clear()
TempArray = Null
else
if Record.Eof then
Record.Close()
TempArray = Null
else
TempArray = Record.getRows()
Record.Close()
end if
end if
Query = TempArray
End Function
End Class
%>
像这种文件就可以写成Class类文件
然后在页面中<!--#include file="SQLControl.asp"-->
该文件
接下来创建并实例化对象
<%
Dim SqlOpt
Set SqlOpt=New SQLControl
Dim oRs
Set oRs=SqlOpt.Query(ByVal sql)
%>
OOP面向对象的好处就是可以尽量的减少页面显示部分的代码,大部分代码在另外的文件中完成,
页面部分调用Class的实例化对象。