在.NET Framework中,使用编译工具编译源代码时,代码引用的任何内容都将通过引用元来得到,以下选项中是较为常见的引用元数据?
A: AssemblyRef
B: ModuleRef
C: TypeRef
D: MemberRef
E: ObjectRef
在Assembly中,能够查看到的内容为:
A: 区域性
B: 程序大小
C: 创建日期
D: 版本
E: 处理器体系结构
如果需要弹出一个消息框(即常见的如记事本编辑后关闭,提示保存的那个窗口),在C#中需要使用哪个类模块的哪个方法:
A: System.IO中的MsgBox
B: System.Form中的MessageBox
C: System.Windows.Form中的MessageBox
D: System.Windows.Forms中的MessageBox
下面说法正确的是:
A: sbyte是无符号8位值
B: short是有符号16位值
C: ulong是无符号64位值
D: object不是所有类型的基类型
E: char是16位Unicode字符
以下常见类中,为静态类的是:
A: Console
B: DataSet
C: SqlConnection
D: Math
E: Environment
F: ThreadPool
以下类型中,可以定义为常量的是:
A: UInt32
B: Single
C: DataTable
D: SByte
E: HashTable
不管是任何编程语言,对于操作字符串,往往是效率最低的,在.NET Framework中,提供了StringBuilder类(在System.Text.StringBuilder中),那么,下述对StringBuilder描述正确的是:
A: 在初始时指定了最大字符数,默认值是Int32.MaxValue(约为20亿),并且不允许更改最大字符数值
B: StringBuilder.ToString()方法返回一个String,这个String不会创建一个新的String对象。
C: StringBuilder中提供了类似于String中的Trim的方法,可以用来截断首尾的空格
D: StringBuilder的ToString()方法返回的String绝对不能更改,如果调用一个方法来修改这个String,那么StringBuilder就会收到消息,并在内部创建并使用一个新的字符数组。
在.NET Framework运行的程序中,可以使用数组,但在.NET Framework中使用的数组的方式与常规有所异同,以下对于数组的描述,哪些是正确的?
A: 所有的数组都隐式继承自System.Array
B: 所有数组都隐式实现IEnumerable,ICollection和Ilist
C: 无法使用代码创建下界为非0的数组
D: 当访问超过数组边界的值时,会导致System.IndexOutOfRangeException的异常
E: 获取一个数组的大小是使用UBound
对于泛型(如List),对开发人员的优势体现有哪几个方面?
A: 源代码保护。使用一个泛型算法的开发人员不需要访问算法的源代码。然而,使用C++模板或者JAVA的泛型技术时,算法的源代码必须提供给准备使用算法的用户。
B: 类型安全性。将一个泛型算法应用于一个特定的类型时,编译器和CLR能理解开发人员的意图,并保证只有与指定数据类型兼容的对象才能随同算法使用。若试图使用不兼容类型的一个对象,会造成编译时错误,或者在运行时抛出异常。
C: 更加清晰的代码。由于编译器强制类型安全性,所以减少了源代码中必须进行的转型次数。这意味着代码更容易编写和维护。
D: 更佳的性能。在泛型之前,要想定义一个常规化的算法,必须定义它的所有成员来操作Object数据类型。如果希望使用算法来操作值类型实例,CLR必须在调用算法的成员之前对值类型实例执行装箱。
以下对于WebServices说法正确的是:
A: WebServices需要架设在IIS上,并仅只能供B/S结构的程序以及Office中的InfoPath程序使用,而在WinForm中使用相当麻烦,需要使用大量代码才能连接到WebService,并且无法与WebServices之间的交互无法同步。
B: WebServices传递数据通常是以XML方式进行传输,在传输过程中不需要考虑所传输的数据是否为基类型的数据,直接传递即可。
C: 如果编写的工程需要使用WebServices,其所在的服务器地址不可以动态指定,如果需要动态指定,则需要进行动态引用。
D: WebServices提供的方法需要使用[WebMethod]公开,才能供外部程序调用。使用C#编写WebServices时,需要注意不管函数是否有返回值,至少需要返回完整结构。
设计题
1. 请用C#设一个类,要求:继承System.Data.DataSet,新增ConnectionString和Execute方法,要求在Execute方法里面执行某个SQL语句后,可以在设计的类返回指定的数据。
2. 请设计一个dll,该组件拥有一个Form类,另外需要设计一个WinForm程序,该程序拥有两个文本框和一个按钮,其中一个文本框输入设计的dll的路径,另外一个文本框输入dllhttp://msnpiki.msnfanatic.com/index.php/Main_Page的namespace和窗口类名,要求点击按钮即可弹出dll中的窗口(要求:不能引用这个dll,提示:利用反射)
3. 请简单写一个例子来简要介绍C#中的序列化
4. 请简单介绍C#中对于异常处理的基本知识
5. 请设计一个WinForm程序,要求实现自定义的XML结构,能够在WinForm中使用TreeView显示出来,同时要求能够进行节点的编辑并保存。
6. 请设计一个简单的两台机器通信的程序(只需要能够简单收发信息即可,不需要在界面和异常处理上花大量时间)
7. 请简要介绍System.Text.StringBuilder与String的异同
8. 请用自己的思路来描述如何利用C#设计一个三层结构的系统
9. 请使用ASP.NET设计两个页面,其中一个页面是发起某项申请的页面,另外一个是审批页面。发起页面要求使用System.Data.SqlClient写入记录到MSSQL中,当写入后,假定已通知审批用户,审批用户键入地址进行审批,将审批结果更新到数据表中。(要求提供SQL Server数据库压缩文件或SQL脚本以及aspx和cs源代码)