ASP.NET面试题

一、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属性时会使事件不能触发执行。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355

推荐阅读更多精彩内容