Class在asp中出现蛮久了,不过很少看到它被用在代码当中.记得当年研究动网的论坛程序的时候,看到了一些例子,当时还觉得比较崇拜----对自己没用过的技术.
但是Class这个东西,如果用得比较少,充其量只是一个大模块的包装方式. 只有大规模地用它来开发,才能显出它对项目管理的优越性来. 所谓的意大利面条式代码,就会和asp划上句号了.
我想目前大部分的asp程序员中都还没有使用Class,对面向对象这种术语也不太熟悉,需要增加一章来描述一下asp中的类所扮演的角色,以及和面向对象编程的关系.
我会用尽量贴近编程实践的方式来解释Class的运用,但不会动用面向对象之类的抽象术语,如果你有了面向对象的理论基础,可以把这些内容与其结合,或者会有你独特的发现. 如果没有了解过面向对象,也不用一定要知道面向对象是怎么回事,只要通过阅读本系列的文章,学会了Class的用法,并且在编程中依据了其中的法则,就可以足够健壮地管理你的asp代码了.
Class相当于一个包装箱,它可以将变量和函数包装起来,形成一个整体,本系列文章要讲的所有内容,可以说是包装的学问.
例如,我们可以包装一个数学处理的Class,并使用它:
1 Class Con_Math
2 Public A
3 Public B
4 Private intC
5
6 Public Function Sum()
7 intC = cint(A) + cint(B)
8 Sum = intC
9 End Function
10 End Class
11
12 set math = new Con_Math
13 math.A = 19
14 math.B = 80
15 Response.write math.Sum
16 set math = nothing
逐行解释语法:
1, 定义了一个包装箱,名字叫 Con_Math ,大家都知道Math是数学的意思,Con_前缀是我的编程习惯,对于可能会在整个程序中使用的Class,冠一个Con_前缀,代表它是一个通用性的Class. 纯属编程习惯,但是加个前缀不光是一个习惯问题,等会在后面会做解释.
2,3 放进去了2个变量,名字为A,B, 它们前面的Public代表它们是公共的变量,可以被外面的程序访问到.
4 变量intC被定义为Private,表示它是包装箱内部的私有变量,不可以从外面看到它,也不可以强行扯出来,无论你有多大力气都不行的.偷出来?你试试看.
6,7,8,9 这四行定义了一个进行加法运算的函数,除了一个Public,其他的都是你天天用的东西,如果你不眼熟...... 还是别看这个系列了,先去做做基础功课比较好. 同上面的两个变量一样,加一个Public表示包装箱在这里开了一个洞,你可以从外面看到它,使用它.
10 End Class 打上封箱的胶带,一个整整齐齐的Class就包装完成了
只不过,这个包装箱只是一个构思,不能当现成的用. 借用唐僧大师的话:(悟空他要吃我)只是一个构思,还没有成为现实(他又何罪之有呢),不如等它实例化以后,再用也不迟啊(再定他的罪不迟啊).
实例化,就表示实际的吃肉行为.
我们可以在asp代码中轻易地实例化我们的构思,可惜西天路上千千万万的妖怪都没有办法实例化他们的"吃唐僧肉"的Class,实在真是可怜悯者!
这是程序员的优越性.
12 实例化了我们定义好的Class,实例化名是不能和构思名一模一样的,不然在语法方面会乱套的.所以大家现在知道了,为什么会给Class加个前缀的习惯么? 当然,大家完全可以不用Con_做前缀,如下等等都是好材料:Yaomin_ Jimo_ Chunge_ ......或者用你老婆的闺名都可以的,人要活得有想象力一点.
13,14 我们把被公开的两个变量A,B赋值,这里的.号,大家完全可以想象它是包装箱上开的一个洞,通过这个洞,你可以把东西放进去取出来.一定要通过这个洞的.嗯?太小了?不不,别担心,再大的东西也可以放进去的.就像人的嘴巴,虽然小,地球那么大的食物也可以被吃光的.
15 我们通过小洞,把它的函数运算结果掏出来,显示在页面上,99,吉利啊,这是我的出生年的前两位和后两位相加的数字. 打开一个记事本,把这段代码写进去吧,然后在IIS里面运行吧.
----千万不要Ctrl+C啊!
万恶的Ctrl+C !
万恶的钱 !
16 男同志在家吃完饭,是要洗碗洗锅的吧. set ** = nothing 也是同样的道理.这个和创建Recordset之后要清掉也是一样的用法. set nothing以后,就表示它从内存里面丢弃了,这个万能包装箱所占的位置就空出来了,你的网站性能当然会提高,还犹豫什么? 用完了赶紧set nothing.
我知道大家都不会这么玩Function的,至少是Sum(19,80)才更方便使用,好,我们在包装箱上再打一个洞出来:
Class Con_Math
Public A
Public B
Private intC
Public Function Sum()
intC = cint(A) + cint(B)
Sum = intC
End Function
Public Function Sum2(ByVal vA,ByVal vB)
Sum2 = cint(vA) + cint(vB)
End Function
End Class
set math = new Con_Math
Response.write math.Sum2(19,80)
set math = nothing
你还想Ctrl+C ?
虽然你这么有诚意地看着我,但是你还是要说是不是想学,不可能你不想学我偏要你学,也不能你想学我偏不让你学,难道你真的想学?确认?
那就不要Ctrl+C吧.
相关推荐
ASP.NET网站多层(3层)架构实战项目
本文还有配套的精品资源,点击获取 简介:ASP.NET是一种基于.NET Framework的服务器端编程模型,用于构建功能丰富的、高性能的Web应用程序。本“ASP.NET网站多层(3层)架构实战项目”将引导你探索三层架构的常见软件设计模式,它将应用程序分为表现层、业务逻辑层和数据访问层,以实现代码的高可维护性和可扩展性。通过实践任务,你将学习如何有效地组织和管理代码,提...
ASP.Net三层架构
一、三层架构简述 文章目录一、三层架构简述1、三层架构的概念2、三层架构的组成3、三层架构的优势二、模型层三、数据访问层四、业务逻辑层五、表现层 1、三层架构的概念 (1)生活场景: A、班级管理:班级中有不同的班委、各个班委有不同的岗位和职责,所有 的班委对班级的管理方式和态度决定了班级最终的形态和成果。 B、企业管理:企业中有不同的部门、各个部门有不同的业务和职责、所有 的部门对企业工作态度决定了企业最终的形态和成果。 (2)项目层面: 就是使用三个(多个)项目结合起来开发出一个应用系统。下
深入探究ASP.NET三层架构的经典实现
ASP.NET三层架构是一种分层的设计模式,广泛应用于Web应用程序开发中。它的核心思想是将应用程序分为三个逻辑层:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层方式不仅有助于提升代码的组织结构,还便于实现模块化开发,使得各层之间的耦合度降低,便于维护和扩展。在本章中,我们将简要介绍三层架构的由来和其基本理念,并探讨为何它能够成为一种经久不衰的设计模式。随后,我们将进入更具体的层实现细节,探讨如何在ASP.NET环境中应用三层架构,并考虑在具体实现时应遵循的最佳实践和原则。
ASP.net搭建三层架构网站
1、新建项目 2、创建Visual Studio解决方案 3、再创建项目 4、选择类库类型 5、依次创建bll(业务逻辑层),dal(数据访问层)和model(模型层也可以叫实体层) 6、添加一个网站 7、选择相应的类型 8、修改名称 9、设为启动项目 10、结构如下 1
掌握ASP.NET三层架构:从基础到实践
ASP.NET三层架构是一种流行的软件设计模式,用于构建可维护、可扩展的Web应用程序。它将应用程序分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer, BLL)和数据访问层(Data Access Layer, DAL)。每个层次都有其明确的职责和功能。
asp 三层架构实例
asp 三层架构实例
ASP.NET MVC会计教学管理端项目系列--T4模板
"T4文本模板"是由一些文本块和控制逻辑组成的混合模板,它可以生成文本文件。在Visual C#或Visual Basic中,控制逻辑编写为程序代码的片段。生成的文件可以是任何类型的文本,例如网页、资源文件或任何语言的程序源代码。现在的VS中只要与代码生成相关的场景基本上都能找T4的身影,比如MVC的视图模板,Entity Framework的DataContext模板等等。
基于三层架构的ASP.NET 项目实战教程.rar
基于三层架构的ASP.NET 项目实战教程.rar
Net系列框架-Dapper+简单三层架构
Net系列框架-Dapper+简单三层架构 工作将近6年多了,工作中也陆陆续续学习和搭建了不少的框架,后续将按由浅入深的方式,整理出一些框架源码,所有框架源码本人都亲自调试通过,如果有问题,欢迎联系我,供大家一起互相学习和探讨,如果你有什么好的意见或建议,欢迎下面留言。 本套框架主要采用asp.net mvc+dapper+简单三层搭建的后端框架 主要技术点: 1、asp.net ...
INCA文件刷写全流程:从ES581驱动安装到XCP协议实战(附避坑指南)
本文详细解析INCA文件刷写的全流程操作,从ES581驱动安装到XCP协议配置,提供实战经验与避坑指南。涵盖A2L文件校验、工作区优化、XCP参数调优及自动化刷写技巧,帮助工程师高效完成ECU开发中的文件刷写任务。
数字IC后端实现之快速获取innovus中drv violation的所有net list
数字IC后端设计实现之快速获取innovus中drv violation的所有net list
【ASP.NET开发】.NET三层架构简单解析
这篇文章本来应该很早就写出来的,但是一直苦于自己的精神能力有限,而且已经到了我们学校的考试周,所以时间上还是有点紧迫。关键的一点就是,找不到合理的思路来写,思路没有的话,就算是再好的素材,也写不来大家喜欢的文章。 之前已经写过关于.NET三层架的两篇文章了,一篇是《【ASP.NET开发】ASP.NET(MVC)三层架构知识的学习总结》和《【ASP.NET开发】ASP.NET对SQLServer的
高效爬取懂车帝车型数据:从静态解析到动态反爬实战
本文详细解析了如何高效爬取懂车帝车型数据,从静态HTML解析到动态接口反爬的完整实战路径。文章重点介绍了使用浏览器开发者工具定位数据、应对CSS混淆与参数加密等反爬策略,并提供了整合静态与动态抓取逻辑的Python代码示例,帮助开发者稳健地获取结构化车型信息。
[ASP中使用三层架构] 7.Data类
第三个类,是数据库连接类,这个可以看做是负责最底层的数据库访问的一个对象,并不属于数据层. 它只是一个工具,而不涉及到任何关于数据库内容的逻辑. 再次重申一下,这三个类,只是在ASP三层架构中的三大基本对象,象这种对象,我在具体的业务中还有更多的扩展,例如对file操作对象,excel操作对象,mail对象,cookie对象... 这些封装固然看起来没什么技术
测试用例经典练习之微信发红包测试用例
微信发红包测试用例
银河麒麟V11 + KVM/QEMU + GT 710 GPU直通 Win10 完整操作流程文档
宿主机:RTX 5080专门运行ollama大模型服务,通过SSH/VNC远程管理Win10虚拟机:GT 710直通,物理键盘专属,通过物理显示器处理视频应用硬件隔离:两个系统完全隔离,互不干扰,性能最大化两种不同的直通方式直通方式 配置方法 设备在宿主机的状态 典型应用场景PCIe设备直通 vfio-pci.ids=10de:128b,10de:0e0f 设备完全从宿主机消失,被vfio-pci驱动接管 GPU、网卡、NVMe硬盘。
ASP.NET三层架构理解
一、基本概念及说明 ASP.NET三层架构主要包括UI(显示/表示)层、BLL(业务逻辑)层、DAL(数据访问)层。UI层主要用来显示数据,BLL层主要用来控制业务逻辑,有时什么都不做,只是简单作为传值用,而DAL层主要用来控制数据库,进行数据交互。并且还有Model层作为补充,进行参数传递。 是描述数据的数据,是你能了解“数据是怎么来的”、“它是做什么的”、“能不能用”的基础信息。📌 举个例子:order_idstringods_order定义:平台内用户在订单系统中产生的唯一订单编号更新时间:每天凌晨 2 点,由 Airflow 调度任务生成所属人:张三(数据开发部)🔍 这些信息本身不直接参与计算,但它们是数据可管理、可追踪、可评估的基础。模块实战建议元数据类型技术 + 业务 + 操作元数据三类统一治理治理路径。
c#三层架构
最近公司需要用c#,就简单看了一下三层架构。 三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。 UI层:即表示层,就是展现给用户看到的界面 BLL:即业务逻辑层,就是实现功能的,用来写方法及其...
学 Simulink—— 基于储能系统(BESS)并网逆变器的 削峰填谷(Peak Shaving & Valley Filling)功能仿真
本文详细介绍了基于储能系统(BESS)并网逆变器的削峰填谷功能Simulink仿真方法。主要内容包括:1)削峰填谷原理与典型日负荷曲线控制逻辑;2)简化系统拓扑与关键参数设置;3)分步骤建模过程,重点讲解EMS控制逻辑、SOC模型和PQ控制实现;4)典型仿真结果分析及参数调优建议;5)常见问题解决方案和工程扩展方向。通过该仿真可掌握BESS在用户侧储能、虚拟电厂等场景的核心应用,实现电网侧功率按峰谷时段规划、BESS充放电控制及并网逆变器PQ控制。文章还提供了完整的BESS/微网系列课程框架和混合微网系统进
YOLO11改进:轻量级改进 | 通用倒瓶颈(UIB)搜索块结合C3k2二次创新 | 轻量化之王MobileNetV4
通用倒瓶颈(UIB)搜索块替代YOLO11的C3k2
ASP.NET WebFroms三层架构个人博客实例
前段时间完成了一个简单的个人博客课程设计, 主要是为了完成后台与前台数据的传输,实现增、删、改、查等功能,所以前端页面设计的并不太漂亮。 在完成功能的过程中遇到了许多问题,但最终也是被一一解决了。 在这里记录一下,加深理解。 该实例通过VS工具的ASP.net语言,前端界面用了bootstrap框架,数据库sql server2017,设计上采用了三层架构的设计模式。 关于三层架构...
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
asp.net mvc4三层架构搭建
asp.net mvc4三层架构搭建,有需要的朋友可以参考下。 1.建立解决方案; 2.建立一个asp.net mvc4的基本项目WebApp作为三层架构中的UI层(表现层); 2.1、表现层中控制器直接运用BLL层的方法取出想要的数据,并通过ViewModel展示到View页面中; 3.建立一个Model类库,建立ADO.NET模型,连接数据库,选择要连接的数据库,保
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
蓝牙模块HM-10手册
蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。
Web网络编程第五次试验:ASP.NET三层架构
Web网络编程第五次试验:ASP.NET三层架构前言一、实验目的二、实验环境三、实验内容四、代码及截图五、实验总结 前言 为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至优快云中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正! 一、实验目的 1.理解ASP.NET三层架构。 2.掌握ASP.NET三层架构的建立和使用方法。 二、实验环境 Visual Studio 2019 ASP.Net Framework 三、实验内容 1、搭建基于APS.NET三层
C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片
基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正
新闻发布系统 (Asp.net 三层架构 )
2012年度课程设计---新闻发布系统(小结)
ASP.NET实现三层架构网站创建流程
1.新建项目—>Visual C#—>Web—>ASP.NET空Web应用程序 或者 新建网站—>ASP.NET空网站 2.在解决方案处右击—>新建项目—>Windows—>类库,分别创建三层架构,Model(实体层)、Dll(逻辑层)、DAL(数据层),在每一层中创建如下图。 3.创建好三层类库后,在Model类库项目上右击,选择添加—>类,并命名,如下图。 4.在创建
1439



被折叠的 条评论
为什么被折叠?



