请教asp.net mvc(c#)中,在一个控制器的方法中,调用获取另一控制器的方法返回值,如何实现?

qq_18536211 2019-01-05 08:23:28
我的二个控制器,在其中一个控制的一个方法中,需获取另一个控制器中一个方法的返回值(数组),请如如何 调用另一方法?
...全文
955 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_18536211 2019-01-08
  • 打赏
  • 举报
回复
我目前是new 一个控制器类.action();不知道这样性能如何
threenewbee 2019-01-07
  • 打赏
  • 举报
回复
如果是走服务器,那么那个控制器得到结果,然后调用 RedirectToAction 跳转到你的这个控制器,通过 RouteData 参数传递 如果通过页面,可以存入ViewBag
Fanstorm丶 2019-01-07
  • 打赏
  • 举报
回复
控制器A要调用控制器B,则直接把B的那个方法单独拿出来放到一个C帮助类里面,AB都调用C
  • 打赏
  • 举报
回复
方法提取……如果你是注入那就注入controller,否则就new了再调用
不定项选择题(共14题,单选或多选): 一、一个HTML文档必须包含三个元素,它们是head、html和( )。 A.scriptB.bodyC.titleD.link 二、下面哪段javascript能弹出一个提示框?( ) A.document.alert(test) B.window.alert(test) C.document.alert('test ') D.window.alert('test ') 三、当鼠标放在一个链接上的css样式应该( )伪类来定义。 A.a:visitedB.a:linkC.a:hoverD.a:active 四、关于ASP.NET的代码隐藏文件的描述正确的是( )。 A.Web窗体页的程序的逻辑由代码组成,这些代码的创建用于与窗体交互。该文件称作为“代码隐藏”文件,如果用C#创建,该文件将具有“.ascx.cs”扩展名 B.web窗体也是类 C.项目所有的Web窗体页的代码隐藏文件都被编译成项目动态链接库(.dll)文件 D.以上都不正确 五、下列ASP.NET语句( )正确地创建了一个与SQL Server数据库的连接。 A.SqlConnection con1 = new Connection(“Data Source = localhost; Trusted_Connection =Yes; Initial Catalog = myDB”); B.SqlConnection con1 = new SqlConnection(“Data Source = localhost; Trusted_Connection =Yes; Initial Catalog = myDB”); C.SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Trusted_Connection =Yes; Initial Catalog = myDB”); D.SqlConnection con1 = new SqlConnection(Data Source = localhost; Trusted_Connection =Yes; Initial Catalog = myDB); 六、执行一次无返回值的数据删除,必须用到下面哪些对象? ( ) A.SqlConnectionB.SqlDataAdapterC.SqlCommandD.SqlDataReader 七、在ADO.NET,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是( ) A.insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行; B.ExecuteNonQuery()方法返回执行Sql语句所影响的行数。 C.Select操作的Sql语句只能由ExecuteReader()方法来执行; D.ExecuteReader()方法返回一个DataReder对象; 八、ASP.NET有多种维护状态的技术,以下哪种是保存在客户端的?( ) A.VIEWSTATEB.SESSIONC.APPLICATIOND.数据CACHE 九、Cookies的默认生命周期有多长? ( ) A.20分钟B.30分钟C. 一天D.随浏览器的关闭而失效 十、int[][] myArray=new int[3][]{ new int[3]{ 5, 6, 2 }, new int[5]{ 6, 9, 7, 8, 3 }, new int[2]{ 3, 2 }}; myArray[2][2]的值是( ) A.9B.2C.6D.越界 十一、要为做了输出缓存的页面实现即时判断用户IP来路,可在以下哪种事件实现? ( ) A.Page.InitB.HttpApplication.BeginRequest C.Page.LoadD.以上都不是 十二、下面哪个SQL语句完全正确( ) A.Select count(*) from (select top 10 * from table order by bb) tb group by cc B.update set bb = bb + 1 from table C.Select count(*) from (select distinct * from table) tb group by cc D.delete * from table 十三、为了实现a.aspx的URL重写,下面哪个正则表达式替换可以实现?( ) A. Regex.Replace(sUrl, @“/(\d+).aspx”, “a.aspx?ID=$0”, RegexOptions.IgnoreCase) B. Regex.Replace(sUrl, @“/(\d+).aspx”, “/a.aspx?ID=$0”, RegexOptions.IgnoreCase) C. Regex.Replace(sUrl, @“/(\d+).aspx”, “a.aspx?ID=$1”, RegexOptions.IgnoreCase) D. Regex.Replace(sUrl, @“/(\d+).aspx”, “/a.aspx?ID=$1”, RegexOptions.IgnoreCase) 十四、下面javascript代码的输出结果是( ) var aa = new Array(1, 2, 4, 5, 3, 6); var c = 0; for (var i = 0; i < aa.length; ++i){ c += aa.pop(); } document.write(c); 提示:Array.pop()函数将数组内最后一个元素移除并返回该元素 A.7 B.14 C.21 D.以上皆不正确 填空题(共4题): 一、C#判断整型变量k是否偶数的语句: 二、有这样的枚举定义:public enum TrainType{ 空调, 快速, 新型, 卧铺 },为实现它的按位组合,你会分别赋予它们什么值?请用逗号按顺序分隔开 三、C#为了防止非本程序集的代码访问,可以用什么关键字修饰类或者类成员? 四、为了将table表内bb(datetime类型)字段的数据按年月降序输出,对应的SQL语句为 选择题答案: 1.B,2.D,3.C,4.BC,5.B,6.AC,7.C,8.A,9.D,10.D,11.B,12.AC,13.D,14.B 填空题答案: 1.(k & 1) == 0 或 k % 2 == 0 2.1,2,4,8(答案不定,看情况) 3.internal 4.select * from table order by year(bb) desc, month(bb) desc 1.new有几种用法 第一种:new Class(); 第二种:覆盖方法 public new XXXX(){} 第三种:new 约束指定泛型类声明的任何类型参数都必须有公共的无参数构造函数。 2.如何把一个array复制到arrayList里 foreach( object o in array )arrayList.Add(o); 3.datagrid.datasouse可以连接什么数据源 [dataset,datatable,dataview] dataset,datatable,dataview , IList 4.概述反射和序列化 反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型。然后,可以调用类型的方法或访问其字段和属性 序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。 5.概述o/r mapping 的原理 利用反射,配置 将类于数据库表映射 6.类成员有( )种可访问形式 可访问形式?不懂。 可访问性:public ,protected ,private,internal 7.用sealed修饰的类有什么特点 sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其他类的基类,则会发生编译时错误。 密封类不能同时为抽象类。 sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。 8.列举ADO.NET的五个主要对象,并简单描述 connection,command,dataReader,trans,dataset ... 9.执行下面代码后: String strTemp ="abcdefg 某某某"; Int i System.Text.Encoding.Default.GetBytes(strTemp).Length; Int j = strTemp.Length; 问:i=(14 ) ;j=(11 ) i=(14 ) ;j=(11 ) 文两个字节 10.C#,string str = null 与 string str ="",请尽量用文字说明区别。(要点:说明详细的内存空间分配) string str ="" 分配空间 11.详述.NET里class和struct的异同! class:放在 ? struct放在? struct值传递 类与结构有很多相似之处:结构可以实现接口,并且可以具有与类相同的成员类型。然而,结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承。结构的值存储在“在堆栈上”或“内联”。细心的程序员有时可以通过聪明地使用结构来增强性能。 12.概述.NET里对 remoting 和 webservice 两项技术的理解和实际的应用。 远程逻辑调用,remoing接口只能用在.net 13.什么是code-behind技术 aspx and cs 14.概述三层结构体系 web/business/dataaccess 15.asp.net如何实现MVC模式,举例说明! web/business/dataaccess ---------------------------------------------------------------------------------------------------------- 1.面向对象的思想主要包括什么? 答:这个题范围太广,不知道说什么. 2.什么是ASP.net的用户控件 答:用户控件就是.ascx扩展名的东西喽,可以拖到不同的页面调用,以节省代码.比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整. 3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释? 答:装箱就是把值类型转成引用类型,从MS IL角度看好像是boxing,没记错的话是把值从堆栈转到堆.拆箱相反,重载就是指一个方法名同,参数个数不同,返回值可以相同的方法.CLR是通用语言运行时,其它的不清楚. 4.列举一下你所了解的XML技术及其应用 答:XML可是好东西,保存配置,站与站之间的交流,WEB SERVICE都要用它. 5.值类型和引用类型的区别?写出C#的样例代码。 答:结构是值类型,类是引用类型,所以传结构就是值类型的应用啦,传对象或类就是引用类型的,这个不用多写了吧. 6.ADO.net常用的对象有哪些?分别描述一下。 答:connection command sqladapter dataset datatable dataview等等.写不完了. 7.如何理解委托? 答:据说相当于函数指针,定义了委托就可以在不调用方法名称的情况下调用那个方法. msdn2005是这样解释的: 委托具有以下特点: 委托类似于 C++ 函数指针,但它是类型安全的。 委托允许将方法作为参数进行传递。 委托可用于定义回调方法。 委托可以链接在一起;例如,可以对一个事件调用多个方法方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。 C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。 8.C#的接口和类有什么异同。 答:这个异同可多了,要说清楚还真不容易. 9.。net读写数据库需要用到哪些类?他们的作用 答:这个类自已可以写的啊,你是指基类吗?那configuration,sqlconnection,sqlcommand等都要用到. 10.UDP连接和TCP连接的异同。 答:前者只管传,不管数据到不到,无须建立连接.后者保证传输的数据准确,须要连结. 11.ASP.net的身份验证方式有哪些?分别是什么原理? 答:form认证,windows集成认证等,原理不清楚. 12.进程和线程分别怎么理解? 答:进程是老子,线程是儿子,没有老子就没有儿子,一个老子可以有多个儿子.一个儿子可以成为别人的儿子,一个老子也可以为别的老子生儿子. 13.什么是code-Behind技术。 答:代码分离,这是个明智的东西,像ASP这样混成一堆很不爽.或者可以理解成HTML代码写在前台,C#代码写在后台.当然前台也有脚本,类的调用等,其实写在一起也是可以的. 14.活动目录的作用。 答:这个不明白.请明白的补充一下. 15..net读写XML的类都归属于哪些命名空间? 答:System.Xml 我自已写的就不一定了,嘿嘿. 16.解释一下UDDI、WSDL的意义及其作用。 答:什么东西? 17.什么是SOAP,有哪些应用。 答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境交换信息并执行远程过程调用的协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。这种相互通信采用的是XML格式的消息,具体请看:http://playist.blogchina.com/2521621.html 18.如何部署一个ASP.net页面。 答:随便啦,想直接上传就直接上传,想打包成EXE就打包,看个人喜好. 19.如何理解.net的垃圾回收机制。 答:GC?对象创建了总要清除啊,不然内存哪够用?
【面试题库网整理 .net 面试题(附答案)(四)】 7. 某一密码仅使用K、L、M、N、O共5个字母,密码的单词从左向右排列,密码单词必须遵循如下规则: (1) 密码单词的最小长度是两个字母,可以相同,也可以不同 (2) K不可能是单词的第一个字母 (3) 如果L出现,则出现次数不止一次 (4) M不能使最后一个也不能是倒数第二个字母 (5) K出现,则N就一定出现 (6) O如果是最后一个字母,则L一定出现 问题一:下列哪一个字母可以放在LO的O后面,形成一个3个字母的密码单词? A) K B)L C) M D) N 答案:B 问题二:如果能得到的字母是K、L、M,那么能够形成的两个字母长的密码单词的总数是多少? A)1个 B)3个 C)6个 D)9个 答案:A 问题三:下列哪一个是单词密码? A) KLLN B) LOML C) MLLO D)NMKO 答案:C 8. 62-63=1 等式不成立,请移动一个数字(不可以移动减号和等于号),使得等式成立,如何移动? 答案:62移动成2的6次方 new有几种用法 第一种:new Class(); 第二种:覆盖方法 public new XXXX(){} 第三种:new 约束指定泛型类声明的任何类型参数都必须有公共的无参数构造函数。 2.如何把一个array复制到arrayList里 foreach( object o in array )arrayList.Add(o); 3.datagrid.datasouse可以连接什么数据源 [dataset,datatable,dataview] dataset,datatable,dataview , IList 4.概述反射和序列化 反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型。然后,可以调用类型的方法或访问其字段和属性 序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。 5.概述o/r mapping 的原理 利用反射,配置 将类于数据库表映射 7.用sealed修饰的类有什么特点 sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其它类的基类,则会发生编译时错误。 密封类不能同时为抽象类。 sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。 11.详述.NET里class和struct的异同! class:放在 ? struct放在? struct值传递 类与结构有很多相似之处:结构可以实现接口,并且可以具有与类相同的成员类型。然而,结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承。结构的值存储在“在堆栈上”或“内联”。细心的程序员有时可以通过聪明地使用结构来增强性能。 12.概述.NET里对 remoting 和 webservice 两项技术的理解和实际的应用。 远程逻辑调用,remoing接口只能用在.net 13.什么是code-behind技术 aspx and cs 14.概述三层结构体系 web/business/dataaccess 15.asp.net如何实现MVC模式,举例说明! web/business/dataaccess 2.什么是ASP.net的用户控件 答:用户控件就是.ascx扩展名的东西喽,可以拖到不同的页面调用,以节省代码.比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整. 3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释? 答:装箱就是把值类型转成引用类型,从MS IL角度看好像是boxing,没记错的话是把值从堆栈转到堆.拆箱相反,重载就是指一个方法名同,参数个数不同,返回值可以相同的方法.CLR是通用语言运行时,其它的不清楚. 4.列举一下你所了解的XML技术及其应用 答:XML可是好东西,保存配置,站与站之间的交流,WEB SERVICE都要用它. 5.值类型和引用类型的区别?写出C#的样例代码。 答:结构是值类型,类是引用类型,所以传结构就是值类型的应用啦,传对象或类就是引用类型的,这个不用多写了吧. 6.ADO.net常用的对象有哪些?分别描述一下。 答:connection command sqladapter dataset datatable dataview等等.写不完了. 7.如何理解委托? 答:据说相当于函数指针,定义了委托就可以在不调用方法名称的情况下调用那个方法. msdn2005是这样解释的: 委托具有以下特点: 委托类似于 C++ 函数指针,但它是类型安全的。 委托允许将方法作为参数进行传递。 委托可用于定义回调方法。 委托可以链接在一起;例如,可以对一个事件调用多个方法方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。 C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。 【面试题库网整理 .net 面试题(附答案)(三)】 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("GetPayInfo")) { MessageBox.Show ("警告:程序正在运行! 请不要重复打开程序!可在右下角系统栏找到!","程序错误提示:",MessageBoxButtons.OK,MessageBoxIcon.Stop); 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("Kernel32.dll",CharSet=CharSet.Auto)] privatestaticextern IntPtr OpenMutex( uint dwDesiredAccess, // access int bInheritHandle, // inheritance option string lpName // object name ); [DllImport("Kernel32.dll",CharSet=CharSet.Auto)] privatestaticextern IntPtr CreateMutex( IntPtr lpMutexAttributes, // SD int bInitialOwner, // initial owner string lpName // object name ); } 【面试题库网整理 .net 面试题(附答案)(二)】 8.以下代码段能否编译通过?请给出理由。 try { } catch(FileNotFoundException e1) { } catch(Exception e2) { } catch(IOException e3) { } catch { } 9.对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资源相关的应用程序定义的任务?(多选) ( ABC ) A.Close B.DisposeC.Finalize D.using E.Quit 10.Net依赖以下哪项技术实现跨语言互用性?( C ) A.CLR B.CTS C.CLS D.CTT 11.请问: String类与StringBuilder类有什么区别?为什么在.Net类库要同时存在这2个类?(简答) 如果要操作一个不断增长的字符串,尽量不用String类,改用StringBuilder类。两个类的工作原理不同:String类是一种传统的修改字符串的方式,它确实可以完成把一个字符串添加到另一个字符串上的工作没错,但是在.NET框架下,这个操作实在是划不来。因为系统先是把两个字符串写入内存,接着删除原来的String对象,然后创建一个String对象,并读取内存的数据赋给该对象。这一来二去的,耗了不少时间。而使用System.Text命名空间下面的StringBuilder类就不是这样了,它提供的Append方法,能够在已有对象的原地进行字符串的修改,简单而且直接。当然,一般情况下觉察不到这二者效率的差异,但如果你要对某个字符串进行大量的添加操作,那么StringBuilder类所耗费的时间和String类简直不是一个数量级的。 12.以下哪个类是int的基类?( ) A.Int32 B.Object C.ValueType D.Int16 二、C# 部分* 13.以下哪些可以作为接口成员? (多选) ( ABDE ) A.方法B.属性C.字段D.事件E.索引器 F.构造函数G.析构函数 14.以下关于ref和out的描述哪些项是正确的?(多选) ( ACD ) A.使用ref参数,传递到ref参数的参数必须最先初始化。 B.使用out参数,传递到out参数的参数必须最先初始化。 C.使用ref参数,必须将参数作为ref参数显式传递到方法。 D.使用out参数,必须将参数作为out参数显式传递到方法。 15.“访问范围限定于此程序或那些由它所属的类派生的类型”是对以下哪个成员可访问性含义的正确描述?( B ) A.public B.protected C.internal D.protected internal 16.class Class1 { private static int count = 0; static Class1() { count++; } public Class1() { count++; } } Class1 o1 = new Class1(); Class1 o2 = new Class1(); 请问,o1.Count的值是多少?( C ) A.1 B.2 C.3 D.4 17.abstract class BaseClass { public virtual void MethodA() { } public virtual void MethodB() { } } class Class1: BaseClass { public void MethodA(string arg) { } public override void MethodB() { } } class Class2: Class1 { new public void MethodB() { } } class MainClass { public static void Main(string[] args) { Class2 o = new Class2(); Console.WriteLine(o.MethodA()); } } 请问,o.MethodA调用的是: ( A ) A.BaseClass.MethodAB.Class2.MethodA C.Class1.MethodAD.都不是 【.net 面试题系列文章一(附答案)】 1 (1)面向对象的语言具有__继承性_性、_封装性_性、_多态性 性。 (2)能用foreach遍历访问的对象需要实现 _ IEnumerable 接口或声明_ GetEnumerator 方法的类型。1.c#的三元运算符是__?:__ 2.当整数a赋值给一个object对象时,整数a将会被__装箱___? 3.类成员有__3__种可访问形式? 4.public static const int A=1;这段代码有错误么?是什么? const成员都是static所以应该去掉static 5.float f=-123.567F; int i=(int)f; i的值现在是_-123____? 6.利用operator声明且仅声明了==,有什么错误么? 要同时修改Equale和GetHash() ? 重载了"==" 就必须重载 "!=" 7.委托声明的关键字是___ delegate ___? 8.用sealed修饰的类有什么特点?不可被继承 9.在Asp.net所有的自定义用户控件都必须继承自_ System.Web.UI.UserControl _______? 10.在.Net所有可序列化的类都被标记为__[serializable]___? 11.在.Net托管代码我们不用担心内存漏洞,这是因为有了_ gC __? 12.下面的代码有什么错误吗?_ abstract override 是不可以一起修饰______ using System; class A { public virtual void F(){ Console.WriteLine("A.F"); } } abstract class B:A { public abstract override void F(); } 13.当类T只声明了私有实例构造函数时,则在T的程序文本外部,_不可以_(可以 or 不可以)从T派生出新的类,_不可以_(可以 or 不可以)直接创建T的任何实例。 14.下面这段代码有错误么?case():不行 default; switch (i){ case(): CaseZero(); break; case 1: CaseOne(); break; case 2: dufault; CaseTwo(); break; } 15.在.Net,类System.Web.UI.Page 可以被继承么?可以
通用数据访问层及Ajax服务端框架源码 这个演示网站的特点: 1. 数据访问全使用了我的通用数据访问层 + 存储过程的实现。 2. 页面使用了大量的Ajax技术,没有任何的直接提交或回传(Submit Form or postback),分页,查询,对话框,都以Ajax的方式实现。 3. 所有Ajax技术的客户端全部基于JQuery,服务端则使用我的Ajax服务端框架 4. 客户端UI使用JQuery Easy-UI 5. 虽然没有使用Asp.net MVC框架,但却使用了MVC思想。 通用数据访问层 及 Ajax服务端框架 的技术特性: 数据访问层设计目标 调用存储过程,不管输入参数多么复杂,不管有多少输出参数,包含转换一个结果集到实体列表,只需要一行C#代码。 Ajax框架的特色 服务端C#方法或用户控件对于JS来说是透明的,就好像可以直接访问一下。 Ajax框架的作用意义 接受JS的请求,去调用C#方法或者用户控件。 至于如何调用方法,如何给方法的参数赋值,最后如何处理返回值给客户端,就属于框架本身的事情了。 所有的这一切,对于客户端来说,更是透明的。这些透明的实现也就是框架的意义了。 这个演示网站的业务原型来自于Northwind,但所有的表都是我重新根据示例需要而重新定义的, 数据来源于以前从网页上获取的数据,虽然不真实,但更适合于演示。于Northwind不同的是,为了示例, 所有的数据库操作全使用存储过程来完成。
第Ⅰ部分 C#语言 第1章 C#简介 3 1.1 .net framework的含义 3 1.1.1 .net framework的内容 4 1.1.2 使用.net framework编写应用程序 4 1.2 C#的含义 7 1.2.1 用C#能编写什么样的应用程序 7 1.2.2 本书C# 8 1.3 visual studio 2010 8 1.3.1 visual studio 2010 express产品 9 1.3.2 解决方案 9 1.4 小结 9 1.5 本章要点 10 第2章 编写C#程序 11 2.1 开发环境 12 2.1.1 visual studio 2010 12 2.1.2 visual C# 2010 express edition 14 2.2 控制台应用程序 15 2.2.1 solution explorer 19 2.2.2 properties窗口 20 2.2.3 error list窗口 20 2.3 windows forms应用程序 21 2.4 小结 25 2.5 本章要点 25 第3章 变量和表达式 27 3.1 C#的基本语法 27 3.2 C#控制台应用程序的基本结构 30 3.3 变量 31 3.3.1 简单类型 31 3.3.2 变量的命名 35 3.3.3 字面值 36 3.3.4 变量的声明和赋值 38 3.4 表达式 39 3.4.1 数学运算符 39 3.4.2 赋值运算符 43 3.4.3 运算符的优先级 44 3.4.4 名称空间 45 3.5 小结 47 3.6 练习 48 3.7 本章要点 49 第4章 流程控制 51 4.1 布尔逻辑 51 4.1.1 布尔赋值运算符 54 4.1.2 按位运算符 55 4.1.3 运算符优先级的更新 59 4.2 goto语句 60 4.3 分支 61 4.3.1 三元运算符 61 4.3.2 if语句 61 4.3.3 switCh语句 65 4.4 循环 68 4.4.1 do循环 68 4.4.2 while循环 71 4.4.3 for循环 73 4.4.4 循环的断 77 4.4.5 无限循环 78 4.5 小结 78 4.6 练习 79 4.7 本章要点 79 第5章 变量的更多内容 81 5.1 类型转换 81 5.1.1 隐式转换 82 5.1.2 显式转换 83 5.1.3 使用Convert命令进行显式转换 86 5.2 复杂的变量类型 89 5.2.1 枚举 89 5.2.2 结构 93 5.2.3 数组 96 5.3 字符串的处理 102 5.4 小结 106 5.5 练习 107 5.6 本章要点 108 第6章 函数 109 6.1 定义和使用函数 110 6.1.1 返回值 111 6.1.2 参数 113 6.2 变量的作用域 120 6.2.1 其他结构变量的作用域 122 6.2.2 参数和返回值与全局数据 124 6.3 main( )函数 125 6.4 结构函数 128 6.5 函数的重载 128 6.6 委托 130 6.7 小结 133 6.8 练习 133 6.9 本章要点 134 第7章 调试和错误处理 135 7.1 vs和vce的调试 135 7.1.1 非断(正常)模式下的调试 136 7.1.2 断模式下的调试 144 7.2 错误处理 152 7.2.1 try...catch...finally 153 7.2.2 列出和配置异常 157 7.2.3 异常处理的注意事项 158 7.3 小结 159 7.4 练习 159 7.5 本章要点 159 第8章 面向对象编程简介 161 8.1 面向对象编程的含义 162 8.1.1 对象的含义 162 8.1.2 一切皆对象 165 8.1.3 对象的生命周期 165 8.1.4 静态和实例类成员 166 8.2 oop技术 167 8.2.1 接口 167 8.2.2 继承 169 8.2.3 多态性 171 8.2.4 对象之间的关系 172 8.2.5 运算符重载 173 8.2.6 事件 174 8.2.7 引用类型和值类型 174 8.3 windows应用程序的oop 175 8.4 小结 177 8.5 练习 177 8.6 本章要点 178 第9章 定义类 179 9.1 C#的类定义 179 9.2 system.objeCt 184 9.3 构造函数和析构函数 185 9.4 vs和vCe的oop工具 190 9.4.1 Class view窗口 190 9.4.2 对象浏览器 192 9.4.3 添加类 193 9.4.4 类图 194 9.5 类库项目 196 9.6 接口和抽象类 199 9.7 结构类型 201 9.8 浅度和深度复制 203 9.9 小结 203 9.10 练习 204 9.11 本章要点 204 第10章 定义类成员 205 10.1 成员定义 205 10.1.1 定义字段 206 10.1.2 定义方法 206 10.1.3 定义属性 207 10.1.4 在类图添加成员 212 10.1.5 重构成员 215 10.1.6 自动属性 216 10.2 类成员的其他议题 217 10.2.1 隐藏基类方法 217 10.2.2 调用重写或隐藏的基类方法 219 10.2.3 嵌套的类型定义 220 10.3 接口的实现 220 10.4 部分类定义 224 10.5 部分方法定义 225 10.6 示例应用程序 227 10.6.1 规划应用程序 227 10.6.2 编写类库 228 10.6.3 类库的客户应用程序 235 10.7 call hierarchy窗口 236 10.8 小结 237 10.9 练习 237 10.10 本章要点 238 第11章 集合、比较和转换 239 11.1 集合 239 11.1.1 使用集合 240 11.1.2 定义集合 246 11.1.3 索引符 247 11.1.4 给Cardlib添加Cards集合 250 11.1.5 关键字值集合和idiCtionary 252 11.1.6 迭代器 254 11.1.7 深复制 259 11.1.8 给Cardlib添加深复制 261 11.2 比较 263 11.2.1 类型比较 263 11.2.2 值比较 268 11.3 转换 283 11.3.1 重载转换运算符 284 11.3.2 as运算符 285 11.4 小结 286 11.5 练习 286 11.6 本章要点 287 第12章 泛型 289 12.1 泛型的概念 289 12.2 使用泛型 291 12.2.1 可空类型 291 12.2.2 system.ColleCtions.generiC名称空间 297 12.3 定义泛型类型 307 12.3.1 定义泛型类 308 12.3.2 定义泛型接口 319 12.3.3 定义泛型方法 319 12.3.4 定义泛型委托 321 12.4 变体 321 12.4.1 协变 322 12.4.2 抗变 323 12.5 小结 324 12.6 练习 324 12.7 本章要点 325 第13章 其他oop技术 327 13.1 ::运算符和全局名称空间限定符 327 13.2 定制异常 329 13.3 事件 331 13.3.1 事件的含义 331 13.3.2 处理事件 332 13.3.3 定义事件 334 13.4 扩展和使用Cardlib 343 13.5 小结 351 13.6 练习 352 13.7 本章要点 352 第14章 C#语言的改进 353 14.1 初始化器 353 14.1.1 对象初始化器 354 14.1.2 集合初始化器 356 14.2 类型推理 359 14.3 匿名类型 360 14.4 动态查找 364 14.4.1 dynamiC类型 365 14.4.2 idynamiCmetaobjeCtprovider 369 14.5 高级方法参数 369 14.5.1 可选参数 369 14.5.2 命名参数 371 14.5.3 命名参数和可选参数的规则 375 14.6 扩展方法 375 14.7 lambda表达式 379 14.7.1 复习匿名方法 379 14.7.2 把lambda表达式用于匿名方法 380 14.7.3 lambda表达式的参数 383 14.7.4 lambda表达式的语句体 384 14.7.5 lambda表达式用作委托和表达式树 385 14.7.6 lambda表达式和集合 386 14.8 小结 388 14.9 练习 389 14.10 本章要点 390 第Ⅱ部分 windows 编 程 第15章 windows编程基础 393 15.1 控件 393 15.1.1 属性 394 15.1.2 控件的定位、停靠和对齐 395 15.1.3 anchor和dock属性 395 15.1.4 事件 396 15.2 button控件 398 15.2.1 button控件的属性 398 15.2.2 button控件的事件 398 15.2.3 添加事件处理程序 399 15.3 label和linklabel控件 400 15.4 textbox控件 401 15.4.1 textbox控件的属性 401 15.4.2 textbox控件的事件 402 15.4.3 添加事件处理程序 404 15.5 radiobutton和CheCkbox控件 407 15.5.1 radiobutton控件的属性 408 15.5.2 radiobutton控件的事件 408 15.5.3 CheCkbox控件的属性 408 15.5.4 CheCkbox控件的事件 409 15.5.5 groupbox控件 409 15.6 riChtextbox控件 412 15.6.1 riChtextbox控件的属性 412 15.6.2 riChtextbox控件的事件 413 15.7 listbox和CheCkedlistbox控件 418 15.7.1 listbox控件的属性 418 15.7.2 listbox控件的方法 419 15.7.3 listbox控件的事件 420 15.8 listview控件 422 15.8.1 listview控件的属性 422 15.8.2 listview控件的方法 424 15.8.3 listview控件的事件 424 15.8.4 listviewitem 425 15.8.5 Columnheader 425 15.8.6 imagelist控件 425 15.9 tabControl控件 431 15.9.1 tabControl控件的属性 432 15.9.2 使用tabControl控件 432 15.10 小结 434 15.11 练习 434 15.12 本章要点 434 第16章 windows窗体的高级功能 435 第17章 部署windows应用程序 465 第Ⅲ部分 web 编 程 第18章 asp-net web编程 503 第19章 web服务 557 第20章 部署web应用程序 581 第Ⅳ部分 数 据 访 问 第21章 文件系统数据 597 第22章 xml 633 第23章 linq简介 657 第24章 应用linq 695 第Ⅴ部分 其 他 技 术 第25章 windows presentation 第26章 windows Communication Foundation 787 第27章 windows workflow foundation 819 附录A 习题答案 839

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧