.面试题大全包括微软、华为、中兴等大企业的面试真题

上传人:宝路 文档编号:22234504 上传时间:2017-11-26 格式:DOCX 页数:8 大小:24.46KB
返回 下载 相关 举报
.面试题大全包括微软、华为、中兴等大企业的面试真题_第1页
第1页 / 共8页
.面试题大全包括微软、华为、中兴等大企业的面试真题_第2页
第2页 / 共8页
.面试题大全包括微软、华为、中兴等大企业的面试真题_第3页
第3页 / 共8页
.面试题大全包括微软、华为、中兴等大企业的面试真题_第4页
第4页 / 共8页
.面试题大全包括微软、华为、中兴等大企业的面试真题_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《.面试题大全包括微软、华为、中兴等大企业的面试真题》由会员分享,可在线阅读,更多相关《.面试题大全包括微软、华为、中兴等大企业的面试真题(8页珍藏版)》请在金锄头文库上搜索。

1、简要地写出一个.NET Remoting 的示例【考点】.NET Remoting 程序的原理, .NET Remoting 的基本编写方法。【出现频率】【解答】在 VS 2008 中添加新的类库项目,并命名为 NetRmClass,将所属解决方案命名为 NetRm,勾选“创建解决方案的目录” 。这样,NetRmClass 类库项目目录即属于 NetRm 解决方案,并可以继续向该解决方案添加更多的其他相关项目。类库项目在这里仅用于创建一个远程对象的类,将项目中的 cs 文件命名为 RmObj,其包含的类型同样为 RmObj,编写RmObj.cs 如代码 13.4 所示。代码 13.4 远程对象

2、类定义 :RmObj.csusing System;using System.Windows.Forms;namespace NetRmClasspublic class RmObj : MarshalByRefObject/在构造函数中,用提示窗口提示双方用户远程对象创建成功public RmObj()MessageBox.Show(远程对象已经创建, 提示信息 );/调用 Diss 方法,会在服务器端的控制台程序中输出方法参数public void Diss(string msg)Console.WriteLine(客户端信息:+msg);/该方法可返回字符串public string D

3、isc()return 与服务器端完成通信;将 NetRm 解决方案中的 NetRmClass 项目进行编译(VS 2008 中选择菜单栏的“项目| 生成”命令,快捷键为 Crtl+F6) ,即可在该项目目录中的 “binDebug”路径下生成编译后的NetRmClass.dll 程序集。在 VS 2008 中的 NetRm 解决方案再次添加新的控制台应用程序项目,并命名为NetRmServer。该项目所生成的程序集作为 Remoting 的服务器端,首先需要添加“NetRmClass.dll”程序集引用,并导入 NetRmClass 命名空间,编写该项目的 Program.cs 如代码 13

4、.5 所示。代码 13.5 Remoting 服务器端程序:Program.csusing System;using System.Runtime.Remoting;using System.Runtime.Remoting.Channels;using System.Runtime.Remoting.Channels.Tcp;using NetRmClass;namespace NetRmServerclass Program/声明 TcpServerChannel 类型的静态字段 channelsstatic TcpServerChannel channels;static void Ma

5、in(string args)/创建新的 TcpServerChannel 对象,端口号为 3000,引用为 channelschannels = new TcpServerChannel(3000);/将 channels 注册到信道服务ChannelServices.RegisterChannel(channels, false);/创建知名服务类型的对象,传递远程对象的类型、对象 URI 和激活对象的枚举成员RemotingConfiguration.RegisterWellKnownServiceType(typeof(RmObj), MyUri, WellKnownObjectMod

6、e.Singleton);/信息提示,当用户输入字符,则结束程序Console.WriteLine(=服务器端已启动=);Console.Read();添加“NetRmClass.dll”程序集引用后,该程序集的副本即被复制到 NetRmServer 项目目录中的“binDebug” 路径下,以供 NetRmServer 项目生成的程序集使用。将 NetRm 解决方案中的NetRmServer 项目进行编译,即可在该项目目录中的“binDebug”路径下生成编译后的NetRmServer.exe 程序集。在 VS 2008 中的 NetRm 解决方案再次添加新的 Windows 窗体应用程序项

7、目,并命名为NetRmClient。该项目所生成的程序集作为 Remoting 的客户端,首先仍然需要添加“NetRmClass.dll”程序集引用,并导入 NetRmClass 命名空间。在“Form1”窗体的设计视图中添加一个 Button 控件和 TextBox 控件,分别命名为“button1” 和“textBox1”,编写 Form1.cs如代码 13.6 所示。代码 13.6 Remoting 客户端程序:Form1.csusing System;using System.Windows.Forms;using System.Runtime.Remoting.Channels;us

8、ing System.Runtime.Remoting.Channels.Tcp;using NetRmClass;namespace NetRmClientpublic partial class Form1 : Form/声明 TcpClientChannel 类型的字段 channelcTcpClientChannel channelc;/声明 RmObj 类型的字段 objRmObj obj;public Form1()InitializeComponent();private void Form1_Load(object sender, EventArgs e)/创建 TcpClie

9、ntChannel 对象,引用为 channelcchannelc = new TcpClientChannel();/将 channels 注册到信道服务ChannelServices.RegisterChannel(channelc, false);/创建远程对象obj = (RmObj)Activator.GetObject(typeof(RmObj), tcp:/localhost:3000/MyUri);private void button1_Click(object sender, EventArgs e)string MyName = textBox1.Text;/调用远程对象

10、的 Diss 方法,并传递用户输入值obj.Diss(MyName);/调用远程对象的 Disc 方法,返回值赋值给 textBox1 控件的“Text” 属性this.textBox1.Text = obj.Disc(); ;添加“NetRmClass.dll”程序集引用后,该程序集的副本同样被复制到 NetRmClient 项目目录中的“binDebug” 路径下,以供 NetRmClient 项目生成的程序集使用。将 NetRm 解决方案中的 NetRmClient 项目进行编译,即可在该项目目录中的 “binDebug”路径下生成编译后的NetRmClient.exe 程序集。至此,一

11、个简单的.NET Remoting 应用解决方案已完成,其中服务器端为控制台程序,客户端为 Windows 窗体程序。服务器端所指定的位置是 “localhost”,也可以根据程序需要更改为 IP 地址。【分析】本题主要考查面试者对 Remoting 应用原理的认识,该解答并不适宜于直接应用于实际开发。当服务器端程序运行后(即运行 NetRmServer.exe) ,用户在客户端程序中输入一些文本,并单击“button1”按钮,服务器端程序和客户端程序运行效果如图 13.4 所示。图 13.4 .NET Remoting 应用示例解答所编写的.NET Remoting 应用用于在本机上测试,不

12、过已经展示了.NET Remoting 技术的基本编写方法。通过示例,可以清楚理解该技术的强大功能以及灵活性,但是需要编程者编写大量的代码,并且需要一致的运行环境支撑。 WCF 技术有什么优势 【考点】 对 WCF 技术的了解,WCF 技术的基本内容。 【出现频率】 【解答】 常用的分布式技术有 COM+、 .NET 远程技术(Remoting)、Web Service 和微软消息队列服务,WCF 技术将这些分布式技术整合为一个高效的 API。常用的那些分布式技术只能解决项目开发中某个方面的问题,并且不同技术对平台要求不同。在项目中有时要使用到多种技术从而导致这些技术所提供的服务有重叠之处,并

13、且整个项目的维护复杂性大大增加。WCF 技术提供了一个完整统一的方案解决这些问题,它提供了一个用于访问各种分布式技术的通用 API,并且增加了很多必要的服务。 【分析】 本题主要考查面试者对.NET Framework 新版本中 WCF 技术的基本认知。公司招聘.NET程序员不一定非要熟练掌握 WCF 这样的新技术,但是一定会要求所招聘的人才具备对新技术的了解,对新技术探索的好奇心。本题即为这样的目的而设,难度不大,只要面试者对新技术有一定程度的了解,经过短时间的培训即可掌握,其考查重点在于面试者的知识广度。 .NET Remoting 和 Web Service 有什么异同【考点】.NET

14、Remoting 技术相对于 Web Service 的优势和劣势。【出现频率】【解答】q Remoting 技术可以灵活地定义其所基于的协议,比如 HTTP 协议和 TCP 协议。在实际开发中,Remoting 一般使用 TCP 协议,这样可保证在保持状态的情况下,获取比 Web Service 更好的性能,而 Web Service 默认情况下是没有状态的。q Remoting 技术不是行业标准,而 Web Service 是行业标准,并可能成为下一代网络数据交换的核心组成部分。q Remoting 技术可用.NET 的 Windows 窗体程序或 Windows 服务进行启动,也可以使用

15、 IIS 部署,而 Web Service 则必须通过 IIS 之类的服务启动。q 在 VS 2008 等.NET 开发环境中,专门对 Web Service 的调用进行了封装,可以直接通过添加 Web 引用或服务引用调用 Web Service,节约大量代码。而 Remoting 需要编写更多代码,开发效率较低。q .NET Remoting 的通信要求双方运行相同的平台框架,如 .NET Remoting 需要客户端和服务器端安装.NET Framework。而 WebService 是平台独立的,可跨语言(支持 XML 的语言)互动。【分析】本题考查面试者的数据库相关的 ASP.NET

16、开发经验,.NET Remoting 与 WebService 有所不同,Remoting 技术支持 HTTP 以及 TCP 信道,而且不仅能传输 XML 格式的 SOAP包,也可以传输传统意义上的二进制流,这使得 Remoting 效率更高也更加灵活。Remoting 不依赖于 IIS,服务器端和客户端可以非常灵活地部署。从某些方面上来讲 WebService其实上是.NET Remoting 的一种特例。【考点】创建 Web Service 的基本代码。【出现频率】【解答】在 VS 2008 中添加新的 WEB 服务代码模板到 WebSvRm 项目,并命名为MyWebSv.asmx。这个代码文件实际已经具备了 Web Service 的基本代码结构,这里编写一个能将小写字母转换为大写字

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号