| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2012 人关注过本帖
标题:[讨论]Asp体现MVC思想,提高代码的重用率,提高开发效率!
只看楼主 加入收藏
NqIceCoffee
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-25
收藏
 问题点数:0 回复次数:12 
[讨论]Asp体现MVC思想,提高代码的重用率,提高开发效率!
最近一直在看这方面的东西.

大家都这方面都有什么建议没?

如何更好的封装数据库的低层操作,如何处理错误等等.

这有一个链接,感觉写的不错,但不是很完善,大家可以看一下!

http://dev.csdn.net/develop/article/54/54679.shtm

记得踊跃发言哦^o^
搜索更多相关主题的帖子: MVC 效率 Asp 用率 思想 
2006-11-01 10:23
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 

个人认为ASP也只是把代码封装入Class类,封装DLL在ASP中将降低程序的可移植性。

2006-11-01 10:30
NqIceCoffee
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-25
收藏
得分:0 
那斑斑一般做东西的时候,是怎么优化系统的?

写函数么?

帮助别人,提高自己!
2006-11-01 10:31
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
收藏
得分:0 
用的不都是函数麼?

[url=javascript:alert(1);] [div]fdgfdgfdg\" on\"[/div] [/url]
2006-11-01 10:33
NqIceCoffee
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-25
收藏
得分:0 
<%
'==============================================
'用 途:执行SQL语句:insert,delete,update
'返回值:成功:返回影响的行数
' 失败:返回Null
'说 明:可用IsNumeric()作用返回结果,即可知道SQL语句执行过程中是否有误
'==============================================
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语句执行过程中是否有误
'================================================
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语句执行过程中是否有误
'=============================================
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
%>

这是我一般做东西的时候,常用的一些数据库操作的函数

由于是自己琢磨东西,所以感觉不知道是不是规范.是不是合理.

大家给点意见!

帮助别人,提高自己!
2006-11-01 10:37
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
回复:(NqIceCoffee)那斑斑一般做东西的时候,是怎么...
以下是引用NqIceCoffee在2006-11-1 10:31:38的发言:
那斑斑一般做东西的时候,是怎么优化系统的?

写函数么?

在ASP中写Class分MVC层,一般不用DLL。ASP对于代码的封装性上的确是差强人意,因为封装为DLL的ASP代码多为ActiveX的DLL,这种文件只有到服务器端注册表中注册后才能使用,因此说ASP封装的DLL明显降低了可移植性。

2006-11-01 10:38
NqIceCoffee
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-25
收藏
得分:0 
以下是引用yms123在2006-11-1 10:38:08的发言:

在ASP中写Class分MVC层,一般不用DLL。ASP对于代码的封装性上的确是差强人意,因为封装为DLL的ASP代码多为ActiveX的DLL,这种文件只有到服务器端注册表中注册后才能使用,因此说ASP封装的DLL明显降低了可移植性。

恩,斑斑谈一下您写东西的时候,都是如何做的?

写一个Conn.asp,然后写函数(偶尔用到一些类,例如:分页)

生成页面么?


帮助别人,提高自己!
2006-11-01 10:41
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
收藏
得分:0 
以下是引用NqIceCoffee在2006-11-1 10:37:06的发言:
<%
'==============================================
'用 途:执行SQL语句:insert,delete,update
'返回值:成功:返回影响的行数
' 失败:返回Null
'说 明:可用IsNumeric()作用返回结果,即可知道SQL语句执行过程中是否有误
'==============================================
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语句执行过程中是否有误
'================================================
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语句执行过程中是否有误
'=============================================
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
%>

这是我一般做东西的时候,常用的一些数据库操作的函数

由于是自己琢磨东西,所以感觉不知道是不是规范.是不是合理.

大家给点意见!

思想很好啊 你搞asp太可惜了 往上層java或.net發展吧


[url=javascript:alert(1);] [div]fdgfdgfdg\" on\"[/div] [/url]
2006-11-01 10:41
NqIceCoffee
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-7-25
收藏
得分:0 
呵呵,谢谢楼上的赞赏

是准备望JSP方向发展了

但ASP和JSP比起来很"小巧",不知道用这个词合适不合适.

一般的站点ASP就绝对够用了

所以想知道ASP系统优化一些东西.呵呵

[此贴子已经被作者于2006-11-1 10:44:26编辑过]


帮助别人,提高自己!
2006-11-01 10:43
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 

<%
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的实例化对象。

2006-11-01 10:49
快速回复:[讨论]Asp体现MVC思想,提高代码的重用率,提高开发效率!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.098195 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved