已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、C#1请解释在new 与override的区别? 在 C# 中,new 关键字可用作运算符或修饰符。 ?new 运算符用于在堆上创建对象和调用构造函数。 ?new 修饰符用于隐藏基类成员的继承成员。使用 override 修饰符来修改方法、属性、索引器或事件。重写方法提供从基类继承的成员的新实现。由重写声明重写的方法称为重写基方法。重写基方法必须与重写方法具有相同的签名。不能重写非虚方法或静态方法。重写基方法必须是虚拟的、抽象的或重写的。重写声明不能更改虚方法的可访问性。重写方法和虚方法必须具有相同的访问级修饰符。不能使用下列修饰符修改重写方法:new static virtual abstract重写属性声明必须指定与继承属性完全相同的访问修饰符、类型和名称,并且重写属性必须是虚拟的、抽象的或重写的。2请解释virtual的含义? virtual 关键字用于修改方法或属性的声明,在这种情况下,方法或属性被称作虚拟成员。虚拟成员的实现可由派生类中的重写成员更改。调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。默认情况下,方法是非虚拟的。不能重写非虚方法。不能将 virtual 修饰符与以下修饰符一起使用:static abstract override除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。 ?在静态属性上使用 virtual 修饰符是错误的。 ?通过包括使用 override 修饰符的属性声明,可在派生类中重写虚拟继承属性3请解释.net采用委托实现的事件模型与JAVA中采用接口实现的事件模型有什么区别,以图示方式解释。4请解释接口的显式实现有什么意义? 接口是其他类型为确保它们支持某些操作而实现的引用类型。接口从不直接创建而且没有实际的表示形式,其他类型必须转换为接口类型。一个接口定义一个协定。实现接口的类或结构必须遵守其协定。接口可以包含方法、属性、索引器和事件作为成员。5请以图示方式解释.net framework? VBC+C#JScriptCommon Language SpecificationXML WebservicesWeb FormsWindows FormsData and XMLBase Class LibraryCLRCLIVisual Studio .NET6.什么是.net? .net是一种平台和框架, .net 不是单纯的语言也不是单纯的工具,它是从底层平台开始构建起来的一个整体框架6Ref 与out有什么不同? 方法参数上的 ref 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,必须将参数作为 ref 参数显式传递到方法。ref 参数的值被传递到 ref 参数。传递到 ref 参数的参数必须最先初始化。将此方法与 out参数相比,后者的参数在传递到 out 参数之前不必显式初始化。属性不是变量,不能作为 ref 参数传递。如果两种方法的声明仅在它们对 ref 的使用方面不同,则将出现重载。但是,无法定义仅在 ref 和 out 方面不同的重载。 方法参数上的 out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。当希望方法返回多个值时,声明 out 方法非常有用。使用 out 参数的方法仍然可以返回一个值。一个方法可以有一个以上的 out 参数。若要使用 out 参数,必须将参数作为 out 参数显式传递到方法。out 参数的值不会传递到 out 参数。不必初始化作为 out 参数传递的变量。然而,必须在方法返回之前为 out 参数赋值。属性不是变量,不能作为 out 参数传递。如果两个方法的声明仅在 out 的使用方面不同,则会发生重载。不过,无法定义仅在 ref 和 out 方面不同的重载。7值类型与引用类型有什么不同?请举例说明?并分别列举几种相应的数据类型。大多数编程语言提供内置的数据类型(比如整数和浮点数),这些数据类型会在作为参数传递时被复制(即,它们通过值来传递)。在 .NET Framework 中,这些称为值类型。您可以创建值类型的实例,将它们作为参数传递,将它们存储为局部变量,或将它们存储在另一值类型或对象的字段中。值类型没有与存储类的实例相关的系统开销,并且它们不需要构造函数。值类型可以有字段、属性和事件。它们也有静态和非静态方法。当它们被装箱时,会从 System.ValueType 继承虚方法,并可实现零个或更多接口。值类型是密封的,这意味着不能从它们派生出其他类型。但是,可以直接对值类型定义虚方法,并且既可对该类型的已装箱形式,也可对未装箱形式调用这些方法。尽管不能从一种值类型派生出另一种类型,但是当所用语言处理虚方法比处理非虚方法或静态方法更方便时,可以对值类型定义虚方法。引用类型的变量又称为对象,可存储对实际数据的引用。以下用于声明引用类型的关键字: ?class?interface ?delegate 8结构体是值类型还是引用类型的? 是值类型。9C#中有没有静态构造函数,如果有是做什么用的? 有. 静态构造函数用于初始化类。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类。静态构造函数既没有访问修饰符,也没有参数。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类。无法直接调用静态构造函数。在程序中,用户无法控制何时执行静态构造函数。静态构造函数的典型用途是:当类使用日志文件时,将使用这种构造函数向日志文件中写入项。10在C#中如何实现多态? “多态性”指定义具有功能不同但名称相同的方法或属性的多个类的能力,这些类可由客户端代码在运行时交换使用。大部分面向对象的编程系统都通过继承提供多态性。基于继承的多态性涉及在基类中定义方法并在派生类中使用新实现重写它们。11什么是反射?如何实现反射?反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。通过反射命名空间中的类以及 System.Type,您可以获取有关已加载的程序集和在其中定义的类型(如类、接口和值类型)的信息。您也可以使用反射在运行时创建类型实例,然后调用和访问这些实例。12请解释流与文件有什么不同?文件是一些具有永久存储及特定顺序的字节组成的一个有序的、具有名称的集合。因此,对于文件,人们常会想到目录路径、磁盘存储、文件和目录名等方面。相反,流提供一种向后备存储器写入字节和从后备存储器读取字节的方式,后备存储器可以为多种存储媒介之一。正如除磁盘外存在多种后备存储器一样,除文件流之外也存在多种流。例如,还存在网络流、内存流和磁带流等。 13程序集与命名空间有什么不同?命名空间是用于避免命名冲突,专用于组织代码,当代码要在其他某个应用程序中重用时,可以降低复杂性。程序集是重用代码的一种方式不同: 可以将相同命名空间中的类部署到不同的程序集中,也可以命名空间中的类部署到一个程序集中命名空间程序集有逻辑编译时机制有物理编译时机制不是运行时实体是运行时实体为源代码元素的名称提供逻辑结构为可执行文件的运行时提供物理结构14请编写一个捕获所有错误的错误处理代码1516 Try17 18catch(Exception e)19委托与事件是什么关系?为什么要使用委托?委托提供了封装方法的方式,事件是某动作已发生的说明,事件是建立于委托之上的?程序运行时同一个委托能够用来调用不同的方法只要改变它的引用方法即可?同一个委托能够用来调用不同的方法,只要改变它引用的方法即可,因此委托调节器用的方法不是在编译时决定的,而是在运行时确定的.20一个类中有几种元素? 类由字段,属性,方法组成21请解释这种语法现象Session“name”=20; 给类的索引器赋值. 22装箱与取消装箱是什么含义?装箱是值类型到 object 类型或到该值类型所实现的任何接口类型的隐式转换。将一个值的值装箱会分配一个对象实例并将该值复制到新的对象中。取消装箱是从 object 类型到值类型或从接口类型到实现该接口的值类型的显式转换。取消装箱操作包括: ?检查对象实例,确保它是给定值类型的一个装箱值。 ?将该值从实例复制到值类型变量中。 23一个构造函数能否调用另一个构造函数,如果能请写出简单的代码能. class class1 int y;public class1()new class1(5);public class1(int i) this.y=i;public void x() Console.WriteLine(y.ToString();static void Main(string args)/class1 cl=new class1(5);cl.x();24请编写创建一个线程的代码。using System;using System.IO;using System.Threading ;class MyThreadpublic int count;string thrdName;public MyThread(string name)count=0;thrdName=name;public void run()Console.WriteLine(thrdName+starting.);doThread.Sleep(500);Console.WriteLine(In+thrdName+, count is +count);count+;while(count10);Console.WriteLine(thrdName+ terminating.);class MultiThreadpublic static void Main()Console.WriteLine(Main thread starting.);MyThread mt=new MyThread(Child #1);Thread newThrd=new Thread(new ThreadStart(mt.run);newThrd.Start();do Console.Write(.);Thread.Sleep(100);while(mt.count!=10);Console.WriteLine(Main thread ending.);25Params是什么含义?params 关键字可以指定在参数数目可变处采用参数的方法参数。在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。26C#中有没有运算符重载?能否使用指针??重载操作符意味着使该操作符具有不同的行为?使用操作符可以使方程式简单易懂 ?重载运算符使用operator关键字来创建一个运算符方法能使用指针, 在 C# 中很少需要使用指针,但仍有一些需要使用的情况。例如,在下列情况中使用允许采用指针的不安全上下文是正确的: ?处理磁盘上的现有结构 ?涉及内部包含指针的结构的高级 COM 或平台调用方案 ?性能关键代码 不鼓励在其他情况下使用不安全上下文。具体地说,不应该使用不安全上下文尝试在 C# 中编写 C 代码。27C#中有很多类被定义为public有什么意义?Public 关键字将公共访问权限授予一个或多个被声明的编程元素。对公共元素的可访问性没有限制。28Internal修饰符有什么含义?internal 关键字是类型和类型成员的访问修饰符。内部成员只有在同一程序集中的文件内才是可访问的。内部访问通常用于基于组件的开发,因为它使一组组件能够以私有方式进行合作,而不必向应用程序代码的其余部分公开。例如,用于生成图形用户界面的框架可以提供“控件”类和“窗体”类,这些类通过使用具有内部访问能力的成员进行合作。由于这些成员是内部的,它们不向正在使用框架的代码公开。在定义具有内部访问能力的成员的程序集外部引用该成员是错误的。29JAVA的代码是半编译半解释的C#的代码是否也是这样 C#源码经过语言编译器执行第一次编译,变为中间语言,然后再由CLR编译成可执行代码.30私有程序集与共享程序集有什么区别?私有程序集: ?默认情况下,C# 程序编译为私有程序集?需要放在应用程序所在的文件夹中?程序集的名称在应用程序中应当是唯一的共享程序集:?可以被不同的应用程序共享?在所有使用程序集的应用程序中,程序集名称应当是唯一的?放在全局程序集缓存中31请解释进程与线程的区别?进程与程序的区别?用最简短的话来说,进程就是当前运行的应用程序。线程是操作系统向其分配处理器时间的基本单位。线程可执行进程的任何一部分代码,包括当前由另一线程执行的部分。32CLR与IL分别是什么含义?CLR(公共语言运行库):能管理内存,能够轻松地设计其对象可以跨语言互动的组件和应用程序,编译一次,并可以在任何支持运行库的CPU和操作系统上运行,跨语言集成(特别是跨语言继承)IL(中间语言):可用于语言互操作性,IL不是字节代码,但很接近字节代码,因此执行应用程序时,IL到机器代码的转换要快很多。独立于CPU的指令集。由CLR转换为特定于CPU的代码。 33对象能否调用静态方法 对象能调用静态方法。 34请说明如下代码的结果class Fathervoid show()Console.Write(Father);static void Main(string args)Father obj=new Child();obj.show();class Child:Fathervoid show()Console.Write(Child);执行结果为:Father.二、ASP.NET1ASP.NET中的身份验证有那些?请解释。 (1)Windows验证:指定Windows身份验证作为默认的身份验证模式.如果是任何形式的Internet信息服务(IIS)身份验证,则使用此模式.(2)Forms验证:指定基于ASP。NET窗体的身份验证作为默认的身份验证模式。(3)Passport:指定Microsoft Passport身份验证作为默认的身份验证模式。(4)None:不指定身份验证,仅适用于匿名用户,或者应用程序可以处理事件以提供它们自己的身份验证情况。2什么是WEB控件?使用WEB控件有那些优势?WEB控件是能拖放在WEB页面上的控件WEB控件分为:内部控件, 列表控件, 复杂控件, 验证控件?WEB控件优势:Web 控件是对象与对象一样,Web 控件拥有方法和属性,并且响应事件一旦将 Web 控件包括在 Web 页中,就可以设置其属性并调用其方法可以为 Web 控件编写服务器端代码以响应在客户端上发生的事件3请解释ASP。NET中以什么方式进行数据验证? 是以验证控件进行数据验证的。4请谈谈对正则表达式的看法? 能将一些比较复杂的验证逻辑以简单的验证表达式验证.5ASP。NET中共有几种类型的控件?各有什么区别?WEB控件分为:内部控件, 列表控件, 复杂控件, 验证控件内部控件-内部控件的使用方法与 HTML 控件相同,它们映射到 HTML 元素并通过使用 runat = server 属性在服务器上执行 列表控件-用于在 Web 页中创建数据列表复杂控件- ?当希望控件拥有复杂的功能或使用 HTML 元素无法创建的功能丰富的用户界面时,可以使用复杂控件验证控件-输入控件的数据需要进行准确性和取值范围方面的检查6WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。由于ASP。NET是Web页面和服务端分离的,因此要产生了服务端事件. ?使用_doPostBack函数能够自动地把客户端的javascript事件转变为一个服务器端的事件?A框架自动为我们处理有关的细节简化工作 使用自动传回的特性:在检测到一个特定用户动作时,自动传回能够将这个页面传回服务器以处理事件.7WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用? 8ASP。NET与ASP相比有什么优势? ASP的缺点:(1)VBScript和JavaScript是在ASP中仅可使用的两种脚本语言。它们是基本的非类型化语言。在ASP中不能使用强类型语言.(2)ASP页面需要解释,使得它执行速度较慢。(3)ASP页面非常凌乱。(4)在使用ASP创建WEB应用程序时,程序员和设计人员必须在同一文件上一起工作。(5)在ASP中,必须通过编写代码来提供所需的任何功能。(6)在ASP中没有对代码给予太多的关注。(7)在ASP中没有调试机制。(8)在ASP中。必须停止WEB服务器才能安装DLL的新版本,并且在应用程序中使用DLL的新版本之前,必须先在注册表中注册它,而且,DLL注册过程非常复杂。ASP.NET的优点:(1)ASP。NET中支持强类型语言.(2)ASP。NET页将被编译而不是解释,这样它们的执行速度就比ASP页快。(3)ASP。NET提供声明性服务器控件。(4)ASP。NET通过继承机制来支持代码的重用。(5)ASP。NET具有Trace的内置方法,可以帮助对页面进行调试。(6)在ASP。NET中,置于应用程序的BIN目录中的任何组件将自动对应用程序可用.9请解释web.config文件中的重要节点 动态调试编译-,自定义错误信息-,身份验证,授权-,应用程序级别跟踪记录-,会话状态设置-,全球化-10请解释ASP。NET中的web页面与其隐藏类之间的关系? 11什么是viewstate,能否禁用?是否所用控件都可以禁用?12请解释该错误 13当发现不能读取页面上的输入的数据时很有可能是什么原因造成的?怎么解决14请解释一个WEB页面中代码执行次序。15请解释什么是上下文对象,在什么情况下要使用上下文对象16请解释转发与跳转的区别?17请解释ASP.NET中不同页面之间数据传递有那些方式?18请解释ASP。NET中button linkbutton imagebutton 及hyperlink这四个控件之间的区别19请解释一下。NET多层应用程序中层与层之间以那几种方式进行数据传递。并解释你自己的项目中采用那种方式进行。20如果出现ASP。NET中的事件不能触发可能由于什么原因造成?请列举至少两个21如果需要在datagride控件中的某一列中添加下拉列表框并绑定数据怎么解决?22请解释中的数据绑定与传统数据绑定有什么区别?23请以图示方式解释ADO。NET的对象模型。24请解释webService? 如何实现webService。25如果用dataSet提交数据请编写实现代码?26DataList 能否分页,请问如何实现?27请列举DataSet中的了对象?28请分别比较JDBC ADO ADO.NET并说明三者之间的异同点及优势29请解释这个正则表达式“ABTJG1-3QSWd4”30在ASP.NET中如何进行文件上传?简要地写出一个.NET Remoting的示例【考点】.NET Remoting程序的原理,.NET Remoting的基本编写方法。【出现频率】【解答】在VS 2008中添加新的类库项目,并命名为NetRmClass,将所属解决方案命名为NetRm,勾选“创建解决方案的目录”。这样,NetRmClass类库项目目录即属于NetRm解决方案,并可以继续向该解决方案添加更多的其他相关项目。类库项目在这里仅用于创建一个远程对象的类,将项目中的cs文件命名为RmObj,其包含的类型同样为RmObj,编写RmObj.cs如代码13.4所示。代码13.4 远程对象类定义 :RmObj.csusing System;using System.Windows.Forms;namespace NetRmClass public class RmObj : MarshalByRefObject /在构造函数中,用提示窗口提示双方用户远程对象创建成功 public RmObj() MessageBox.Show(远程对象已经创建, 提示信息); /调用Diss方法,会在服务器端的控制台程序中输出方法参数 public void Diss(string msg) Console.WriteLine(客户端信息:+msg); /该方法可返回字符串 public string Disc() return 与服务器端完成通信; 将NetRm解决方案中的NetRmClass项目进行编译(VS 2008中选择菜单栏的“项目|生成”命令,快捷键为Crtl+F6),即可在该项目目录中的“binDebug”路径下生成编译后的NetRmClass.dll程序集。在VS 2008中的NetRm解决方案再次添加新的控制台应用程序项目,并命名为NetRmServer。该项目所生成的程序集作为Remoting的服务器端,首先需要添加“NetRmClass.dll”程序集引用,并导入NetRmClass命名空间,编写该项目的Program.cs如代码13.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 NetRmServer class Program /声明TcpServerChannel类型的静态字段channels static TcpServerChannel channels; static void Main(string args) /创建新的TcpServerChannel对象,端口号为3000,引用为channels channels = new TcpServerChannel(3000); /将channels注册到信道服务 ChannelServices.RegisterChannel(channels, false); /创建知名服务类型的对象,传递远程对象的类型、对象URI和激活对象的枚举成员 RemotingConfiguration.RegisterWellKnownServiceType(typeof(RmObj), MyUri, WellKnownObjectMode.Singleton); /信息提示,当用户输入字符,则结束程序 Console.WriteLine(=服务器端已启动=); Console.Read(); 添加“NetRmClass.dll”程序集引用后,该程序集的副本即被复制到NetRmServer项目目录中的“binDebug”路径下,以供NetRmServer项目生成的程序集使用。将NetRm解决方案中的NetRmServer项目进行编译,即可在该项目目录中的“binDebug”路径下生成编译后的NetRmServer.exe程序集。在VS 2008中的NetRm解决方案再次添加新的Windows窗体应用程序项目,并命名为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;using System.Runtime.Remoting.Channels.Tcp;using NetRmClass;namespace NetRmClient public partial class Form1 : Form /声明TcpClientChannel类型的字段channelc TcpClientChannel channelc; /声明RmObj类型的字段obj RmObj obj; public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) /创建TcpClientChannel对象,引用为channelc channelc = 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; /调用远程对象的Diss方法,并传递用户输入值 obj.Diss(MyName); /调用远程对象的Disc方法,返回值赋值给textBox1控件的“Text”属性 this.textBox1.Text = obj.Disc(); ;添加“NetRmClass.dll”程序集引用后,该程序集的副本同样被复制到NetRmClient项目目录中的“binDebug”路径下,以供NetRmClient项目生成的程序集使用。将NetRm解决方案中的NetRmClient项目进行编译,即可在该项目目录中的“binDebug”路径下生成编译后的NetRmClient.exe程序集。至此,一个简单的.NET Remoting应用解决方案已完成,其中服务器端为控制台程序,客户端为Windows窗体程序。服务器端所指定的位置是“localhost”,也可以根据程序需要更改为IP地址。【分析】本题主要考查面试者对Remoting应用原理的认识,该解答并不适宜于直接应用于实际开发。当服务器端程序运行后(即运行NetRmServer.exe),用户在客户端程序中输入一些文本,并单击“button1”按钮,服务器端程序和客户端程序运行效果如图13.4所示。图13.4 .NET Remoting应用示例解答所编写的.NET Remoting应用用于在本机上测试,不过已经展示了.NET Remoting技术的基本编写方法。通过示例,可以清楚理解该技术的强大功能以及灵活性,但是需要编程者编写大量的代码,并且需要一致的运行环境支撑。 WCF技术有什么优势 【考点】 对WCF技术的了解,WCF技术的基本内容。 【出现频率】 【解答】 常用的分布式技术有COM+、.NET远程技术(Remoting)、Web Service和微软消息队列服务,WCF技术将这些分布式技术整合为一个高效的API。常用的那些分布式技术只能解决项目开发中某个方面的问题,并且不同技术对平台要求不同。在项目中有时要使用到多种技术从而导致这些技术所提供的服务有重叠之处,并且整个项目的维护复杂性大大增加。WCF技术提供了一个完整统一的方案解决这些问题,它提供了一个用于访问各种分布式技术的通用API,并且增加了很多必要的服务。 【分析】 本题主要考查面试者对.NET Framework新版本中WCF技术的基本认知。公司招聘.NET程序员不一定非要熟练掌握WCF这样的新技术,但是一定会要求所招聘的人才具备对新技术的了解,对新技术探索的好奇心。本题即为这样的目的而设,难度不大,只要面试者对新技术有一定程度的了解,经过短时间的培训即可掌握,其考查重点在于面试者的知识广度。 .NET Remoting和Web Service有什么异同【考点】.NET Remoting技术相对于Web Service的优势和劣势。【出现频率】【解答】q Remoting技术可以灵活地定义其所基于的协议,比如HTTP协议和TCP协议。在实际开发中,Remoting一般使用TCP协议,这样可保证在保持状态的情况下,获取比Web Service更好的性能,而Web Service默认情况下是没有状态的。q Remoting技术不是行业标准,而Web Service是行业标准,并可能成为下一代网络数据交换的核心组成部分。q Remoting技术可用.NET的Windows窗体程序或Windows服务进行启动,也可以使用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开发经验,.NET Remoting与WebService有所不同,Remoting技术支持HTTP以及TCP信道,而且不仅能传输XML格式的SOAP包,也可以传输传统意义上的二进制流,这使得Remoting效率更高也更加灵活。Remoting不依赖于IIS,服务器端和客户端可以非常灵活地部署。从某些方面上来讲WebService其实上是.NET Remoting的一种特例。【考点】创建Web Service的基本代码。【出现频率】【解答】在VS 2008中添加新的WEB服务代码模板到WebSvRm项目,并命名为MyWebSv.asmx。这个代码文件实际已经具备了Web Service的基本代码结构,这里编写一个能将小写字母转换为大写字母的Web Service应用。首先编写MyWebSv.asmx.cs如代码13.1所示。代码13.1 转换大写字母的Web Service:MyWebSv.asmx.csusing System;using System.Collections;using System.ComponentModel;using System.Data;using System.Linq;using System.Web;using System.Web.Services;using System.Web.Services.Protocols;using System.Xml.Linq;namespace WebSvRm /默认命名空间的指定 WebService(Namespace = /) WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1) public class MyWebSv : System.Web.Services.WebService /声明WebMethod特性,该方法才可以被访问 WebMethod public string ConvertWord(string word) return word.ToUpperInvariant(); 然后在WebSvRm项目中添加WEB引用,地址为“http:/localhost/MyWebSv.asmx”,这时项目目录下将生成Web References目录,这个目录包含有localhost子目录。然后在WebSvRm项目的默认首页,即Default.aspx中调用Web Service以输出结果,首先编写Default.aspx如代码13.2所示。代码13.2 调用Web Service的页面:Default.aspx 调用Web Service 请输入需要转换大写字母的初始字母或单词: 调用Web Service所返回的结果: 最后编写Defaul
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- TCECS 1309-2023 建设项目设计前期及规划咨询标准
- 河南豫光金铅集团招聘试题及答案
- 硬件制造市场分析与研究
- 机器学习工程师秋招面试题及答案
- 华为秋招面试题及答案
- 公务员面试冷门素材面试题及答案
- 格兰仕秋招题库及答案
- 2025广西来宾市忻城县自然资源局招聘编外人员1人参考题库及答案详解(考点梳理)
- 2026年临汾职业技术学院单招职业适应性考试必刷测试卷必考题
- 2025广东梅州市引进急需紧缺人才426人(第二轮)参考题库及答案详解一套
- 人教版(PEP)小学英语-(三、四、五、六年级)-单词表(附注音标)
- 网络传播概论(第5版)课件 第3、4章 网络传播形式的流变、网络传播的多重策略
- 2024年阳泉融盛投资控股集团有限公司招聘笔试冲刺题(带答案解析)
- 计算机专业生涯发展展示
- 红色金融史教学课件
- 胃炎病理学课件
- 大学生职业生涯发展报告
- 热力发电厂课程设计说明书
- 斑点叉尾鮰鱼种培育技术
- 南方科技大学自述信800字范文六篇
- “双减”背景下小学语文个性化作业设计策略
评论
0/150
提交评论