一、ASP.NET的三种开发模式?
1.Web Pages
(1)最简单的ASP.NET模型
(2)内置了用于数据库、视频、社交媒体等模板和帮助器
2.Web. Forms
(1)传统的ASP.NET事件驱动开发模型
(2)添加了服务器控件、服务器事件以及服务器代码的网页
3.MVC
(1)MVC编辑模型是与传统的ASP.NET(Web Forms)相比更加轻重的替代方案
(2)轻重级的可测试性框架,同时整合了所有已有的ASP.NET特性,比如模板页、安全性和认证。
二、怎样进行站点结构分析?
1. .aspx是Web Forms窗体页面的后缀
2. App_Data文件夹是ASP.NET提供程序存储自身数据的默认位置
3. App_Start文件夹是应用程序静态配置文件
4.Content 文件夹用于存放资源文件
5.fonts文件夹用于存放项目中需要使用到的字体
6.Scripts文件夹用于存放站点所用到的JavaScript脚本文本
三、验证控件有哪些?常用属性是?
所有验证控件都有的(公共的):
(1)ControlToValidate:所要验证的控件ID
(2)Text:验证出错提示
(3)ErrorMessage:提交给汇总控件的错误信息(如果Text,则验证出错)
1.非空验证控件(RequiredFieldValidator)
(公共的)
2.比较验证控件(CompareValidator)
(公共)
(1)type:设置比较类型,不同类型比较会出错
(2)ControlToCompare:与要验证的控件进行比较的控件ID
(3)Operator:设置比较运算符,默认等于
3.范围验证控件(CompareValidator)
(公共)
(1)MaximumValue:最大值
(2)MinimumValue:最小值
(3)Type:验证类型
4.正则表达式验证控件(ReqularExpressionValidator)
(1)非负数:^\d+$
(2)正整数:^[0-9]*[1-9][0-9]*$
(3)匹配中文字符:[\u4e00-\u9fa5]
(4)匹配双字节字符:[^\x00-\xff]
(5)货币(非负数,小数点后两位):\d+(\.\d=d)?
(6)货币(正数或负数):(-)?\d+(\.\d=d)?
5.自定义验证控件(CustomValidator)
(公共)
(1)ClientValidationFunction:设置客户端验证的脚本函数
(2)ServerValidate(事件):服务器端验证方法
6.错误汇总验证控件(ValidationSummary)
(1)ShowMessageBox:是否弹出提示消息
(2)ShowSummary:是否提示该报告内容
四、在母版页中,ContentPlaceHolder控件的作用是什么?
1. 母版页上包括两个ContentPlaceHolder控件
2. ID为head的控件:预留给加载页面样式和Kavascript文件
3. ID为ContentPlaceHolder的控件:预留给内容页显示
五、ASP.NET上传步骤是什么?
1. 判断文件是否存在FileUpload.HasFile
2. 获取名为FileUpload.FileName的文件
3. 获取服务器保存文件的物理路径Server.Mapth(“”)
4. 调用保存方法保存文件到服务器Server.SaveAs(“”)
六、ASP.NET常见的系统对象有哪些?
1.Page对象
2.Request对象
3.Response对象
4.Session对象
5.Cookie对象
6.Application对象
7.Server对象
七、Page对象、Response对象、Request对象的属性有?
1.Page对象的属性:
(1)IsPostBack:bool值,表示是否响应客户端或被首次加载访问
(2)IsValid:bool值,该页面是否验证成功
(3)MasterPageFile:获取或设置模板页的文件名
2.Response对象的属性:
(1)Cookies:获取响应的Cookie集合
(2)write():将信息写入HTTP响应输入流
(3)Redirect:将用户重定向新的URL
3.Rquest对象的属性:
(1)QueryString:取得Get请求中的数据
(2)Form:取得Post请求中的数据
(3)Request:取得Post或Get请求中的数据
八、Session对象是什么?怎么使用?数据维护的方法是什么?
Session对象适用于存储在多个页面之间传递的特定用户的信息,Session是服务端数据,储存于服务器端。
使用方法:
赋值:Session[“名称”]=值;
取值:变量=Session[“名称”];
数据维护的方法有:
(1)Abandon():取消当前对话
(2)Clear():会话对象中移除所有的建和值
(3)Remove():删除会话对象中的项
九、Application对象是什么?怎么使用?
Application对象用于共享应用程序级信息,即多个用户共享一个Application对象,是用于启动和管理ASP.NET应用程序的主要对象。
使用方法:
赋值:Application[“名称”]=值;
取值:变量=Application[“名称”];
十、数据访问层的命名是?方法有哪些?
命名:DAL命名或以解决方案名称+DAL的格式命名
方法:增、删、改、查
十一、三层架构分为哪三层?
数据访问层:数据库的访问和操作
业务逻辑层:负责数据传递和处理
表现层:显示数据和接收用户输入的数据
十二、数据绑定的工作方式是什么?
一旦指定了数据绑定,就需要激活,可以通过控件或者页面对象的DataBind()方法激活数据绑定,如果没有在Load事件中绑定DataBind()方法,ASP.NET将会忽略数据绑定表达式,在页面上以空值的形式呈现
(1)指定数据绑定控件的DataSource属性,并调用DataBind()方法才能够显示绑定的数据
(2)控件指定的数据源必须可枚举
十三、ItemTemplate的作用是?
ItemTemplate项数据绑定模板使用“<%#Eval(“字段名”)%>“形式进行数据绑定
十四、GidView如何进行分页操作?
(1)找到GridView控件,点击右键选择属性,找到AllowPaging属性,设置True,开启分页功能
(2)找到GridView控件,点击右键选择属性,找到PageSize属性,设置每页显示条数
(3)找到GridView控件,点击右键选择属性,找到GridView属性中的PagelndexChanging事件
(4)在其中,通过NewPagelndex属性获取用户当前所操作的页码,赋值给GirdView的Pagelndex属性。
(5)重新对GirdView进行一次绑定操作
十五、.Response.Redirect和Server.Transfer的区别?
请求的过程:
1.浏览器aspx文件请求--->服务器执行--->遇到Response.Redirect语句->服务器发送Response.Redirect后面的地址给客户机端的浏览器--->浏览器请求执行新的地址
2.浏览器aspx文件请求->服务器执行->遇到Server.Transfer语句->服务器转向新的文件
可以见Server.Transfer比Response.Redirect少了一次服务器发送回来和客户端再请求的过程.
跳转对象:
3.Response.Redirect可以切换到任何存在的网页。
4.Server.Transfer只能切换到同目录或者子目录的网页.
数据保密:
5、Response.Redirect后地址会变成跳转后的页面地址。
6、Server.Transfer后地址不变,隐藏了新网页的地址及附带在地址后边的参数值。具有数据保密功能。
传递的数据量(网址后附带的参数):
7、Response.Redirect能够传递的数据以2KB(也就是地址栏中地址的最大的长度)为限。
8、传递的数据超过2KB时,务必使用Server.Transfer。
十六、用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?
从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层
1.数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问
2.业务逻辑层:是整个系统的核心,它与这个系统的业务(领域)有关
3.表示层:是系统的UI部分,负责使用者与整个系统的交互。
优点:分工明确,条理清晰,易于调试,而且具有可扩展性。
缺点:增加成本。
十七、ASP.net的身份验证方式有哪些?分别是什么原理?
Windwos(默认) 用IIS...Froms(窗体) 用帐户....Passport(密钥)
十八、如果出现ASP.NET中的事件不能触发可能由于什么原因造成?
1.如果在web窗体中使用了验证控件,那么当验证控件中的验证逻辑没有通过时一般会使事件不能触发执行。
2.如果使用了诸如Textchange、Checkchange、Selectedindexchanged这类事件并在服务器端进行了事件处理,但是没有设置AutoPostBack属性时会使事件不能触发执行。