Asp.NET笔记(九)--一些常用的简答题
1.静态网页和动态网页的区别?
答:
静态网页:是指与服务器不会发生数据交互的网页,即网页内容不会变化的页面
动态网页:是指会与服务器发生数据交互,即网页的内容会发生改变的页面
2.HTML服务器控件与Web服务器控件的区别?
答:
1.HTML服务器控件派生自System.Web.UI.HtmlControls命名空间
Web服务器控件派生自System.Web.UI.WebControls命名空间
2.Web服务器控件有服务器事件( Page_Load、 Button1_Click…)
HTML服务器控件有客户端事件(onclick、onmouseover…)
3.Web服务器控件借助ASP.NET视图状态和状态管理,会自动保持web控件的状态。
Html服务器控件无法保持控件的状态。
3.在ASP.NET 中可以通过哪些方法来接收页面之间的传值,有什么区别?
答:
QueryString: 获取包含在URL中的一些参数; 获取get方式提交的表单数据
Form: 获取post方式提交的表单数据
4.Execute与Transfer方法的区别?
答:
Execute方法用于执行从当前页面转移到另一个页面,并将执行返回到当前页面,执行所转移的页面在同一浏览器窗口中执行,然后原始页面继续执行。所以执行Execute方法后原始页面保留控制权。
Transfer方法用于将执行完全转移到指定页面。执行该方法时主调页面将失去对其的控制权。
5、1.Application中Lock()和UnLocak()的作用是什么?
答:
Lock()用于锁定Application变量,使得首先调用该方法的用户会话拥有应用程序的控制权从而可以更改应用程序变量,在锁定释放前其他任何用户都不能编辑应用程序变量。
UnLock()方法用于解锁用户会话对应用程序变量的锁定。UnLock()方法一旦执行,用户就会失去对应用程序变量的控制权。
6. Session对象的特性有哪些?
答:
Session对象包含特定的某个用户信息。此信息不能共享或由应用程序的其他用户访问。
当用户向服务器发出请求时,用户ID会在客户端和服务器之间传达。因此,在用户会话期间可以记录并监视用户的特定信息。
当会话过期或终止时,服务器会自动清除Session对象
7、三层架构分为哪三层?每层的作用是什么?
答:
UI(表现层):主要是指与用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据。
BLL(业务逻辑层):UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等。
DAL(数据访问层):与数据库打交道。主要实现对数据的增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。
(当然这些操作都是基于UI层的。用户的需求反映给界面(UI),UI反映给BLL,BLL反映给DAL,DAL进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户)
8、.ashx与.aspx?
答:
ashx对比aspx文件,没有了页面的代码。其实这就是ashx和aspx不同的地方,因为aspx要将前后台显示和处理逻辑分开,所以就弄成了两个文件,这中间就要涉及html的一些逻辑处理。而ashx不同,它只是简单的对web http请求的直接返回我们想要返回的结果,比aspx少处理了html的过程,理论上比aspx要快。
9.POST和GET请求有什么区别?
答:
Get请求是将需要提交给服务器的数据放在URL地址中,Post请求则是将请求数据封装到请求报文中进行发送
10、同步和异步的区别?
答:
同步:同步是指一个进程在执行某个请求的时候,如果该请求需要一段时间才能返回信息,那么这个进程会一直等待下去,直到收到返回信息才继续执行下去。
异步:异步是指进程不需要一直等待下去,而是继续执行下面的操作,不管其他进程的状态,当有信息返回的时候会通知进程进行处理,这样就可以提高执行的效率了,即异步是我们发出的一个请求,该请求会在后台自动发出并获取数据,然后对数据进行处理,在此过程中,我们可以继续做其他操作,不管它怎么发出请求,不关心它怎么处理数据。
11.Session与Cookie的区别?
答:
1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。
12.简述Web服务器控件的工作原理?
答:
由客户端发送命令到服务器端请求打开某个页面,服务器的IIS根据请求打开页面的扩展明来判断时采用哪个组件来进行解析,若扩展名是htm或html的文件则不解析直接返回,若扩展名是.aspx文件则调用aspnet_isapi.dll来解析,解析的文件形成HTML流之后返回客户端,客户端的浏览器将HTML流显示出来。Web服务器控件在解析过程中被解析成对应的HTML控件元素。
13、列举 ASP.NET 页面之间传递值的几种方式?
答:
一、QueryString变量
二、使用Application变量
三、使用Session变量
四、使用Cookie对象缓存
五、使用Server.Transfer
六、缓存
(任意答出四点即可)
14、请写一个 SQL 语句:从 user 表中取出 name 列中的起始字符是“北京”的全部记录
答:
select * from User where name like '北京%'
15、用.net 做 B/S 结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么 要这样分层?
答:
三层架构(表示层(UI)业务逻辑层(BLL)数据访问层(DAL))
表示层接收用户请求传递给业务逻辑层,业务逻辑层将请求信息传递给数据访问层
数据访问层从数据库取出用户需要的数据交给业务逻辑层,业务逻辑层将处理好逻辑的数据交给表示层
16、在 C#中,string str = null 与 string str = " "的区别?
答:
string str=null 把这个引用指向了一个null,没有地址没有值的地方。
string str="" 把这个引用指向了一个地址,地址里面存的是空的字符。
17、面向对象的三大特性是什么?
答: 继承 封装 多态