NET面试题及答案 联系客服

发布时间 : 星期五 文章NET面试题及答案更新完毕开始阅读3aca4deef8c75fbfc77db2d3

每一个class至多只可以定义一个static构造函数,并且不允许增加访问级别关键字,参数列必须为空。 为了不违背编码规则,通常把static数据成员声明为private,然后通过statci property提供读写访问。 const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。

const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。

const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。

readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。

readonly 关键字与 const 关键字不同: const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly 字段可用于运行时常数。

readonly 只能在声明时或者构造函数里面初始化,并且不能在 static 修饰的构造函数里面。 21.您需要创建一个ASP.NET应用程序,公司考虑使用Windows身份认证。

所有的用户都存在于AllWin这个域中。您想要使用下列认证规则来配置这个应用程序: a、 匿名用户不允许访问这个应用程序。

b、 所有雇员除了Tess和King都允许访问这个应用程序。 请问您应该使用以下哪一个代码段来配置这个应用程序?( A )

A. B. C. D. E.

22.您要创建一个显示公司员工列表的应用程序。您使用一个DataGrid控件显示员工的列表。您打算修改这个控件以便在这个Grid的Footer显示员工合计数。请问您应该怎么做?( C? ) A.重写OnPreRender事件,当Grid的Footer行被创建时显示合计数。

B.重写OnItemCreated事件,当Grid的Footer行被创建时显示合计数。 C.重写OnItemDataBound事件,当Grid的Footer行被创建时显示合计数。 D. 重写OnLayout事件,当Grid的Footer行被创建时显示合计数。 23. 您要创建ASP.NET应用程序用于运行AllWin公司内部的Web站点,这个应用程序包含了50个页面。您想要配置这个应用程序以便当发生一个 HTTP代码错误时它可以显示一个自定义的错误页面给用户。您想要花最小的代价完成这些目标,您应该怎么做?(多选)( CD )

A.在这个应用程序的Global.asax文件中创建一个Application_Error过程去处理ASP.NET代码错误。

B.在这个应用程序的Web.config文件中创建一个applicationError节去处理ASP.NET代码错误。 C.在这个应用程序的Global.asax文件中创建一个CustomErrors事件去处理HTTP错误。 D.在这个应用程序的Web.config文件中创建一个CustomErrors节去处理HTTP错误。 E.在这个应用程序的每一页中添加一个Page指示符去处理ASP.NET 代码错误。 F. 在这个应用程序的每一页中添加一个Page指示符去处理ASP.NET HTTP错误。

24. 您的公司有一个DB Server,名为AllWin,其上装了MS SQLSERVER 2000。现在需要您写一个数据库连接字符串,用以连接AllWin上SQL SERVER中的一个名为PubBase实例的Test库。请问,应该选择下面哪一个字符串?( B )

A. “Server=AllWin;Data Source=PubBase;Initial Catalog=Test;Integrated Security=SSPI”

B. “Server= AllWin;Data Source=PubBase;Database=Test;Integrated Security= SSPI” C. “Data Source= AllWin \\PubBase;Initial Category=PubBase;Integrated Security= SSPI” D. “Data Source= AllWin \\ PubBase;Database=Test;Integrated Security= SSPI”

25. 您为AllWin公司创建了一个ASP.NET应用程序。这个应用程序调用一个 Xml Web Service。这个 Xml Web Service 将返回一个包含了公司雇员列表的DataSet对象。请问您该如何在这个程序中使用这个 Xml Web Service?( ? )

A.在“引用”对话框的.Net标签中选择 System.Web.Services.dll。 B.在“Web引用”对话框中输入这个 XML Web service 的地址。

C.在您的 Global.asax.cs 中添加一条 using 语句并指定这个 XML Web service 的地址。 D.在您的 Global.asax.cs 中写一个事件处理器导入这个 Xml Web Service 相应的 .wsdl 和 .disco 文件。

26. 您要创建一个ASP.NET应用程序在DataGrid控件中显示一个经过排序的列表。产品数据被存放于一个名为PubBase的Microsoft SQL Server 数据库。每个产品的主键是ProductID,Numeric型并且每个产品有一个字母描述字段,名为ProductName。您使用一个 SqlDataAdapter对象和一个SqlCommand对象通过调用一个存储过程从数据库中获取产品数据。您将SqlCommand对象的 CommandType属性设置为CommandType.StoredProcedure,并将它的CommandText属性设置为 procProductList。您成功的获取了一个DataTable对象,其中是已经按ProductID降序排列的产品列表。您打算显示以相反的字母顺序排列的ProductName,请问该怎么做? ( B )

A. 将SqlCommand对象的CommandType属性修改为CommandType.Text,将CommandText属性修改为”SELECT * FROM procProductList ORDER BY ProductName DESC”。然后将这个DataTable对象绑定到DataGrid控件。

B. 创建一个基于这个DataTable对象的新的DataView并将这个DataView的Sort属性设置为“ProductName DESC”。然后将这个DataView对象绑定到DataGrid控件。 C. 将DataGrid控件的AllowSorting属性设置为True,并将DataGridColumn的SortExpression属性设置为 “ProductName DESC”.以显示ProductName。然后将这个DataTable对象绑定到DataGrid控件。

D. 将DataTable对象的DisplayExpression属性设置为 “ORDER BY ProductName DESC”.。然后将这个DataTable对象绑定到DataGrid控件。

76.C#代码实现,确保windows程序只有一个实例(instance) ///

///应用程序的主入口点。 ///

[STAThread]

staticvoid Main() {

//防止程序多次运行

if(!OneInstance.IsFirst(\{

MessageBox.Show (\警告:程序正在运行中! 请不要重复打开程序!可在右下角系统栏找到!\程序错误提示:\

return; }

Application.Run(new Form1()); }

// ******************* 防止程序多次执行 ************************** publicabstractclass OneInstance { ///

///判断程序是否正在运行

/// ///

程序名称

///如果程序是第一次运行返回True,否则返回False publicstaticbool IsFirst(string appId) {

bool ret=false;

if(OpenMutex(0x1F0001,0,appId)==IntPtr.Zero) {

CreateMutex(IntPtr.Zero,0,appId); ret=true; }

return ret; }

[DllImport(\privatestaticextern IntPtr OpenMutex( uint dwDesiredAccess, // access

int bInheritHandle, // inheritance option string lpName // object name );

[DllImport(\privatestaticextern IntPtr CreateMutex( IntPtr lpMutexAttributes, // SD int bInitialOwner, // initial owner string lpName // object name ); }

3. 简述 private、 protected、 public、 internal 修饰符的访问权限。

private : 私有成员, 在类的内部才可以访问。protected : 保护成员,该类内部和继承类中可以访问。public : 公共成员,完全公开,没有访问限制。internal: 在同一命名空间内可以访问。 4. 写出一条Sql语句: 取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。) select top 10 * from A where id not in (select top 30 id from A)

解2: select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A) 5 .列举ASP.NET 页面之间传递值的几种方式。

1. 使用QueryString, 如....?id=1; response. Redirect().... 2.使用Session变量 3.使用Server.Transfer

2。请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。 session(viewstate) 简单,但易丢失 application 全局

cookie 简单,但可能不支持,可能被伪造 input ttype=\简单,可能被伪造 url参数简单,显示于地址栏,长度有限 数据库稳定,安全,但性能相对弱 2.override与重载的区别

Override用来重写父类的方法,重载使用相同名的方法或操作符拥有不同类型的参数 3、.net的错误处理机制是什么

.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。 4、C#中接口和类的异同

接口和类都是类,不同的事,接口只包含方法或属性的声明,不包含具体实现方法的代码,接口可以实现多继承,而类只能是单继承,继承接口的类必须实现接口中声明的方法或属性。接口主要定义一种规范,统一调用方法,在大型项目中接口正发挥日益重要的作用。 4、DataReader和DataSet的异同

DataReader 和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库..任何对SqlConnection 的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为 DataReader的特殊性和高性能.所以DataReader是只进的..你读了第一条后就不能再去读取第一条了..

DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存...但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作...

1. 在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?

Using 引入一个名子空间,或在使用了一个对像后自动调用其IDespose,New 实例化一个对像,或修饰