ASP.NET动态网站制作(28)-- 三层框架(2)
前言:三层框架的第二节课,继续上次课的内容。
内容:
1.三层框架的使用目的:可以将视图层和业务逻辑层及实体层分开,可以提高代码的扩展性,安全性,可以实现程序的低耦合性。
2.GetModel方法及GetCount方法回顾。
3.千万不要直接去生成解决方案,因为这样会把该解决方案里的所有内容都重新编译一次。想要生成哪个文件,直接右击生成即可。网站生成之后也是一个程序集,即一个dll文件。
4.需要把网站的所有内容上传到服务器,如果网站里面的静态内容(html,css,js,图片,文件,aspx...)做了修改的话,只需要把修改的内容通过FTP上传到服务器即可;如果修改的是后台页面(.cs,ashx文件),需要上传该后台文件及网站的程序集。
5.调试后台代码:F9--设置断点;点击调试菜单,然后选择附加到进程;刷新,找到isexpress.exe,然后点击附加。F11,逐语句调试。在涉及到和数据库交互的程序里面,如果报错,首先需要通过调试得到SQL语句,然后将这个SQL语句拿到数据库里面去执行,看是否正确。
6.GetList(),非常重要的一种方法,它就是获取到一个对象的集合的方法:参数的含义:(1)查询条件,(2)一页有多少条数据,(3)当前页是第几页,(4)排序方式(默认是true,升序),(5)查询的表的字段(默认为*),(6)排序字段(默认是主键)。
select * from UserInfor where Phase='.NET网站开发03期' --GetList的原理
List<UserInfor> list = UserInforDAL.m_UserInforDalGetList(); //获取表中所有内容,等价于select * from UserInfor List<UserInfor> list = UserInforDAL.m_UserInforDalGetList(GetWhere(),PageSize,PageIndex); //获取当前页的所有内容 List<UserInfor> list = UserInforDAL.m_UserInforDalGetList(GetWhere(),PageSize,PageIndex,true,"*"); //获取当前页的所有内容,升序排序
7.SQL语句中加where 1=1就是为了让SQL语句在不管后面条件是否满足都可以保证次SQL语句是一条正确的SQL语句。
8.掌握GetList()中的删除,插入,添加,修改等方法。
9.GetModel(),GetCount(),GetList(),Delete(),Update()只能够针对一张表。多个表的联合查询只能用SqlHelper。
后记:练习,理解。
ASP.NET动态网站制作(28)-- 三层框架(2)的更多相关文章
- ASP.NET动态网站制作(3)--css(2)
前言:css分为四次课讲完,第一节课内容见ASP.NET动态网站制作(2)--css(1),接下来的内容会涉及到定位.浮动.盒子模型(第二次课).css的具体应用(第三次课).css3(第四次课).今 ...
- ASP.NET动态网站制作(27)-- 三层框架(1)
前言:今天主要介绍一下三层框架,给大家一个整体的概念.分层概念使得程序低耦合,更加健壮,扩展性更好. 内容: 1.三层: UI(表现层):主要是指与用户交互的界面.用于接收用户输入的数据和显示处理后用 ...
- ASP.NET动态网站制作(1)--html
前言:正式上课的第一课,讲的是前端部分的最基础内容:html. 前端:html,css,js 数据库:sql server 动态部分:.net,c#... IIS(Internet Informati ...
- ASP.NET动态网站制作(20)-- C#(3)
前言:C#的第三节课,继续上次课的内容,依旧围绕基础的只是讲解. 内容: 1.StringBuilder类:由于string类一旦创建,则不能更改.如果做字符串拼凑的话,将会非常耗费空间,如: str ...
- ASP.NET动态网站制作(17)-- C#(1)
前言:用C#也有一年多了,基本上都是边用边学的,现在可以跟着老师系统的学习一下,感觉应该挺好的. 内容: 1.网站部署的相关内容: (1)想要做一个网站,首先得去买一个域名,老师的域名是在美橙上买的 ...
- ASP.NET动态网站制作(0)
前言:一直想系统地学习一下网站建设的相关内容,看过相关的书籍,也跟着视频学过,但总觉得效率不高,学过的东西印象不深刻,或许还是自己动手实践的少.无意中免费听了一堂讲ASP.NET网站建设的课,觉得性价 ...
- ASP.NET动态网站制作(29)-- 正则
前言:继续讲框架,然后介绍正则的相关知识. 内容: 1.封装分页方法,方便以后调用:响应的CSS代码也可以封装. 2.WEB层里面的页面名称不要和model和dal里面的名称相同. 3.两个表联合查询 ...
- ASP.NET动态网站制作(26)-- Ajax
前言:这节课讲解关于Ajax的相关内容. 内容: 1.当点击页面中的一个按钮提交数据或请求数据的时候,整个页面的信息都会提交(不管信息是否是提交或者请求的数据,页面中所有的数据都提交),这样耗用的时间 ...
- ASP.NET动态网站制作(24)-- ADO.NET(3)
前言:ADO.NET的第三节课.今天主要讲SQL Helper. 内容: 1.DataReader和DataSet的区别: (1)DataReader是一行一行地读,且只能向前读:DataSet是一次 ...
随机推荐
- linux如何安装xampp,以及融合dvwa
1.官网下载:https://www.apachefriends.org/download.html 2.赋予执行权限 [admin@19-56 ~]$ chmod +x xampp-linux-x6 ...
- mysql 初始化报错 /usr/local/mysql/bin/mysqld:error while loading shared libraries :libaio.so.1
安装mysql在初始化的时候,出现/usr/local/mysql/bin/mysqld:error while loading shared libraries:libaio.so.1 :canno ...
- 利用CMD查看系统硬件信息
利用CMD查看系统硬件信息对于在windows下查看系统信息大家一定不陌生了,我现在说几个最常用的方法,对命令感兴趣的朋友看看,(给菜鸟看的,老手就不要笑话我了,大家都是从那个时候过来的,^_^).一 ...
- solr6.6 高级搜索Facet
1.介绍 facet分面查询是solr中以导航为目的的查询,在用户查询的结果上根据分类增加了count信息,然后用户根据count信息做进一步实现渐进式精确搜索. 什么字段适合用facet呢? fa ...
- jquery 中attr和prop的区别
在jQuery API中也有专门解释: Attributes VS. Properties 在一些特殊的情况下,attributes和properties的区别非常大.在jQuery1.6之前,.at ...
- Java8 读写锁的改进:StampedLock(笔记)
StampedLock是Java8引入的一种新的所机制,简单的理解,可以认为它是读写锁的一个改进版本,读写锁虽然分离了读和写的功能,使得读与读之间可以完全并发,但是读和写之间依然是冲突的,读 ...
- Python学习笔记(五)多进程实现并发服务器
每创建一个TCP连接,就创建一个进程. 代码如下: # coding: utf-8 import socket import os import sys import signal import ...
- 《让LoadRunner走下神坛》
这几天碰到这么几件事情,觉得挺有意思的:1. 有个朋友问了我一个问题:LoadRunner的缺点在哪?然后我反问她:LoadRunner的优点在哪?她一时语塞,后来说:感觉都是优点没有什 ...
- lucene ParallelMultiSearcher与MultiSearcher的区别
http://www.cnblogs.com/twilight/archive/2009/10/09/1579793.html ParallelMultiSearcher与MultiSearcher的 ...
- HTTP请求报文属性详解
HTTP请求报文组成:请求行+请求头+请求体 注意:请求体和URL都可以传递请求参数. 常见请求头属性: 1.Accept 作用:浏览器客户端用来告诉服务端能接受什么类型的响应. 例如: Acce ...