.net高级面试题
.net高级工程师在求职面试中,学会做好面试准备,了解面试试题很重要,下面小编已经为你们整理了.net高级面试题,希望可以帮到你。
.net高级面试题(一)
1. 您需要创建一个APS.NET 应用程序,公司考虑使用 Windows 身份认证,所有的用户都存在于 AllWin 这个域中,您想要使用下列认证规则来配置这个应用程序: 匿名用户不允许访问这个应用程序。
所有雇员除了Tess 和 King 都允许访问这个应用程序。
请问您应该使用哪一个代码段来配置这个应用程序?
<authorization>
<deny users="?">
<deny users="allwin\tess,allwin\king">
</authorization>
2. 您要创建 APS.NET 应用程序用于运行 AllWin 公司内部的 Web 站点,这个应用程序包含了50个页面。您想要配置这个应用程序以便当发生一个 HTTP 代码错误时它可以显示一个自定义的错误页面给用户。 您想要花最小的代价完成这些目标,您应该怎么做?
在配置文件web.config 中添加如下配置节:
<customErrors mode="RemoteOnly"
defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm"/>
<error statudCode="404" redirect="FileNotFound.htm"/>
3. 您的公司有一个DB Server, 名为 AllWin, 其上装了 MS SQLSERVER 2000。 现在需要您写一个数据库连接字符串,用以连接AllWin 上SQL SERVER 中的一个名为 PubBase 实例的Test 库。请问,应该选择哪一个字符串?
"Server=AllWin\PubBase;Database=Test;
Integrated Security=SSPI"
4. 您为 AllWin 公司创建了一个ASP.NET 应用程序。这个应用程序调用一个Xml Web Service。这个Xml Web Service将返回一个包含了公司雇员列表的DataSet对象。请问您如何在这个程序中使用这个 Xml Web Service?
在 “Web引用” 对话框中输入这个 XML Web Service的地址。
5. 在下面的例子里
Using System;
Class A{
Public A(){
PrintFields();
}
Public virtual void PrintFields(){}
}
Class B:A{
int x=1;
int y;
public B(){
y=-1;
}
Public override void PrintFields(){
Console.WriteLine("x={0},y={1}",x,y);
}
}
当使用new B()创建B的实例时,产生什么输出?
X=1,Y=0
.net高级面试题(二)
1.什么是反射?
答:动态获取程序集(PPS.SqlServerDAL)信息
2.ADO.net中常用的对象有哪些?分别描述一下。
答:Connection 数据库连接对像
Command 数据库命令
DataReader 数据读取器
Dat.net高级面试题dapter:适配器
DataSet 数据集
3.在Asp.net中所有的【自定义用户控件】都必须继承自________?
答:Control。
控件: 系统自带控件、用户控件、复合控件、用户自定义控件
4.在.Net中所有可序列化的类都被标记为_____?
答:[serializable] serial lizable
5.在.Net托管代码中我们不用担心内存漏洞,这是因为有了______? Rubbish, garbage
答:GC。Garbage Collector:垃圾回收器
6..net的错误处理机制是什么?
答:.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。
7.大概描述一下ASP。NET服务器控件的生命周期
答:
初始化
加载视图状态(就是服务器端,ViewState==),整个。net自动回发机制是基于ViewState
处理回发数据(读取页面控件的值)
再加载 (Page_Load,, ISPostBack)
发送回发更改通知(给服务器发送预先通知)
处理回发事件 (真正触发事件)
卸载
.net高级面试题(三)
1. &和&&的区别。
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and).
2.<%# %> 和 <% %> 有什么区别?
答:<%# %>表示绑定的数据源[绑定字段]<%# DataBinder.Eval(Container.DataItem, '字段名') %> <% %>是服务器端代码块,for,if,....
3.接口是否可以继承接口?抽象类是否可以实现接口?抽象类是否可以继承实体类?
答:接口是可以继承接口的,抽象类是可以实现接口的,抽象类可以继承实体类,但是有个条件,条件是,实体类必须要有明确的构造函数。
4.谈谈final,finally,finallize的区别?
答:final:修饰符:,可以修饰类/方法/变量,
finally:try....catch...finally表示不管是否有异常,总是执行的部分。 finallize: GC的时候使用 final用于申明属性,方法和类,表示属性不可变,方法不可以被覆盖,类不可以被继承。 接口是否可以继承抽象类,接口是否可以继承实体类? 接口只能继承接口。
nally是异常处理语句结构中,表示总是执行的部分。
Finallize表示是object类一个方法,在垃圾回收机制中执行的时候会被调用被回收对象的方法。
5.Collection和Collections的区别?
答:Collection是集合类的上级接口,
Collections是针对集合类的一个帮助类,它提供一系列静态方法来实现对各种集合的搜索,排序,线程安全化操作。
6.C#中委托是什么?事件是不是一种委托?
答:委托类似于C语言中的函数指针,就是可以把一个方法名作为参数。
但是她比指针要安全的多,它可以把方法作为一个参数传递给另一个方法,可以理解为指向函数的引用。事件是一种消息机制,它是一种特殊委托,必须用+=符号。
btn_Add_Click.Click += new System.EventHander(btn_Add_OnClick);
看了“.net高级面试题”