asp.net IE10 下的bug

Bug描述:

LinkButton 点击无响应

可能与采用form登录后无法判断用户已登入的解决方法相同(需测试和验证)

解决方法:

1、下载微软的IE10补丁

.NET 4 -http://support.microsoft.com/kb/2600088

.NET 2.0

http://support.microsoft.com/kb/2600100 for Win7 SP1/Windows Server 2008 R2 SP1, Windows Vista/Server 2008, Windows XP/Server 2003

http://support.microsoft.com/kb/2608565 for Win7/Windows Server 2008 R2 RTM

2、仅仅修复单个站点

     下载IE.browser文件, 地址http://www.hanselman.com/blog/content/binary/App_BrowsersUpdate.zip, 将其中的projects/ie.browser 拷贝到站点的app_browsers目录下(我仅仅修复了NET4.0的项目)


其他参考资料:

一、IE10浏览器访问 ASP.NET站点不正常的处理办法[图]

有的网友反映,在使用微软的ie10这个浏览器的时候,访问用asp.net架构的站点时候,发现linkbutton失效了, 调试后发现少了_doPostBack 函数, 好端端的怎么就没有了了?

IE10浏览器访问 ASP.NET站点不正常的处理办法[图]图片1

搜索之后, 知道是asp.net对IE10渲染的问题的bug, .NET2.0和.NET 4.0都有这样的问题.

  文章中的解决办法:

 1.机器级别修复, 服务器所有ASP.NET程序受益

  需要去微软下载对应asp.NET版本的修补程序


.NET 4 -http://support.microsoft.com/kb/2600088

.NET 2.0

http://support.microsoft.com/kb/2600100 for Win7 SP1/Windows Server 2008 R2 SP1, Windows Vista/Server 2008, Windows XP/Server 2003

http://support.microsoft.com/kb/2608565 for Win7/Windows Server 2008 R2 RTM

  2.仅仅修复单个站点

     下载IE.browser文件, 地址http://www.hanselman.com/blog/content/binary/App_BrowsersUpdate.zip, 将其中的 ie.browser 拷贝到站点的app_browsers目录下(我仅仅修复了NET2.0的项目)

http://www.hackhome.com/InfoView/Article_231681.html

二、非常奇怪的问题。
其实这个问题不解决也不影响项目的。他们不会用ie10哈哈,但是还是想知道为什么。
当没有选择ie10的兼容性视图时,打开了处问题的那个页面,报错__doPostBack看了html源码发现没有生成__doPostBack这个函数,也根本就没有下面这段代码

JavaScript code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type= "text/javascript" >
//<![CDATA[
var  theForm = document.forms[ 'aspnetForm' ];
if  (!theForm) {
     theForm = document.aspnetForm;
}
function  __doPostBack(eventTarget, eventArgument) {
     if  (!theForm.onsubmit || (theForm.onsubmit() !=  false )) {
         theForm.__EVENTTARGET.value = eventTarget;
         theForm.__EVENTARGUMENT.value = eventArgument;
         theForm.submit();
     }
}
//]]>]
</script>

但是选择了兼容性视图时就会有上面的这段代码,也就是有__doPostBack这个函数了。这到底是什么情况。。。。。。难道是asp.net会认识ie10,自动判断,自已觉得是否生产那段代码,但是我在页面中使用了linkbutton服务器控件,它怎么能不生成__doPostBack这个函数呢。。。。那假如输出的页面源码中有__doPostBack这个函数,为什么又在未选择兼容性视图时,源码中却没有呢。。。。。。。

问题已经找到了  是ie10的问题 http://www.techweb.com.cn/news/2011-09-07/1090483.shtml 微软已经发补丁更新了


三、解決 IE10 无法使用 ASP.NET Forms登录的問題

解決此問題,步驟如下:

1. 先在專案目錄或正式機網站跟目錄下新增一個 App_Browsers 資料夾

2. 新增一個副檔名為 *.browser 的檔案,例如:IE10Fix.browser,檔案內容如下:

<browsers>
   <browser refID="Default">
     <capabilities><!-- To avoid wrong detections of e.g. IE10 -->
       <capability name="cookies" value="true" />
       <capability name="ecmascriptversion" value="3.0" />
     </capabilities>
   </browser>
 </browsers>


View Code
設定完成後,問題自然解決!

本文出处:http://www.ablanxue.com/prone_7061_1.html

四、IE10下的asp.net程序严重问题

IE10下的asp.net程序严重问题

0
  悬赏园豆:20 [已解决问题] 浏览: 789次

注意:记得在win8消费者预览版的时候,ie10下也是缺少下图中所示的内容,但更新一个windows补丁后就正常了,何解?为何到了win8发布正式版后还会出现如此问题 

【Chrome】注意:在ie9及其以下版本中,解析出来的asp.net页面与Chrome中解析出来的一致,到了ie10中却不正常了,但在ie10中打开开发者工具,切换成ie9模式又正常了,谁能告诉我这是怎么回事吗

【Ie10】

追赶北极光的主页 追赶北极光  |  初学一级  | 园豆: 99
提问于:2012-11-14 13:48
最佳答案
0

不会吧,这是.net framework  postback机制,和浏览器,开发环境没有关系呀,程序能确保没有动过?

收获园豆: 20
田林九村  |  老鸟四级  |园豆:2037  | 2012-11-14 14:07

同一个编译好发布且在大量用户中正在运行的程序,以前在win8消费都预览版中我就发现有这个问题,后来和同事一起玩win8消费者预览版的时候更新一下微软件发的补丁,又好了,后来一直以为win8正式发布后在ie10用会解决这个问题,昨天微软发布win7下的ie10,我想装上看一下,没想问题依然存在,后来在家打开另外一台装有win8的电脑,一样的效果,但是在ie10下,用开发者工具切换到ie9模式下是正常的,之前我的开发环境也一直是ie9+vs2010也是正常的,太奇怪了,两个图中的差别不知道你看清楚没有

追赶北极光  | 园豆:99  (初学一级)  | 2012-11-14 14:11

@田林九村: 谢谢给出的链接,很有帮助


五、ASP.NET在IE10中无法判断用户已登入及Session丢失问题解决方法

今天发现在IE10中登录我公司的一个网站时,点击其它菜单,页面总会自动重新退出到登录页,后检查发现,IE10送出的HTTP头,和.AUTH Cookie都没问题,但使用表单验证机制(FormsAuthentication)却无法判断该用户已登入,保存的Session总会丢失.

后查实这是ASP.NET 2.0,3.5和4.0的Bugs,因这些版本无法识别IE10的User-Agent标头字符串,所以无法识别用户浏览器的版本,从而导至了ASP.NET的特定功能失效,认为游览器不支持Cookies功能,不处理与Cookie相关的程式码等,从而在浏览器中不保存服务器返回的Session标识,造成丢失等.

这个问题早经微软官方确认,是IE10的一个Bug,也发布了两个HOTFIX专门用来修复这个问题,各位如遇到同样的问题,可参考以下说明: 
KB2600088: Hotfix 适用在 Microsoft.NET Framework 4.0 中的 ASP.NET [英文
KB2608565: Hotfix 适用在 .NET Framework 3.5.1 中的 ASP.NET [英文
KB2600100: Hotfix 适用在 .NET Framework 3.5 SP1 与 .NET Framework 2.0 SP2 中的 ASP.NET [英文]
简单的解决方法是,在网站根目录,新增一个浏览器定义文件(browser definition file) 

步骤如下
1.添加一个"App_Browsers"文件夹 
2.添加一个"*.browser"后缀的文件,如IE10.browser. 
3.添加文件内容如下: 

复制代码代码如下:

<browsers> 
<browser refID="Default"> 
<capabilities><!-- To avoid wrong detections of e.g. IE10 --> 
<capability name="cookies" value="true" /> 
<capability name="ecmascriptversion" value="3.0" /> 
</capabilities> 
</browser> 
</browsers> 

设定完成,问题即可解决



已标记关键词 清除标记
相关推荐
技术基础 New Folder 多样式星期名字转换 [Design, C#] .NET关于string转换的一个小Bug Regular Expressions 完整的在.net后台执行javascript脚本集合 ASP.NET 中的正则表达式 常用的匹配正则表达式和实例 经典正则表达式 delegate vs. event 我是谁?[C#] 表达式计算引擎 正式发布表达式计算引擎WfcExp V0.9(附源码) 运算表达式类的原理及其实现 #实现的18位身份证格式验证算法 身份证15To18 的算法(C#) 一组 正则表达式 静态构造函数 忽略大小写Replace效率瓶颈IndexOf 随机排列算法 理解C#中的委托[翻译] 利用委托机制处理.NET中的异常 与正则表达式相关的几个小工具 你真的了解.NET中的String吗? .NET中的方法及其调用(一) 如何判断ArrayList,Hashtable,SortedList 这类对象是否相等 帮助解决网页和JS文件中的中文编码问题的小工具 慎用const关键字 装箱,拆箱以及反射 动态调用对象的属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来的warning 微软的应试题完整版(附答案) 一个时间转换的问题,顺便谈谈搜索技巧 .net中的正则表达式使用高级技巧 (一) C#静态成员和方法的学习小结 C#中结构与类的区别 C#中 const 和 readonly 的区别 利用自定义属性,定义枚举值的详细文本 Web标准和ASP.NET - 第一部分 XHTML介绍 在ASP.NET页面中推荐使用覆写(Override)而不是事件处理(Event Handler) 常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中,让你的组件也可以绑定 .NET20 一种简单的窗口控件UI状态控制方法 翻译MSDN文章 —— 泛型FAQ:最佳实践 Visual C# 3.0 新特性概览 C# 2.0会给我们带来什么 泛型技巧系列:如何提供类型参数之间的转换 C#2.0 - Object Pool 简单实现 Attributes in C# 手痒痒,也来个c# 2.0 object pool 泛型技巧系列:用泛型打造可复用的抽象工厂 体验.net2.0的优雅(四):Provider、策略、控制反转和依赖注入 泛型最佳实践 asp.net 2.0下嵌套masterpage页的可视化编辑 C# 2.0与泛型 动态调用对象的属性和方法——性能和灵活性兼备的方法 泛型技巧系列:用泛型打造可复用的抽象工厂 泛型技巧系列:如何提供类型参数之间的转换 .NET 2.0 泛型Quiz Visual Studio 2005体验泛型编程 C++ 泛型编程系列讲座之实施 泛型技巧系列:简单类型选择器 C# 泛型简介 我眼中的C#2.0新功能特性 泛型技巧系列:避免基类及接口约束 New Article 不该用Generics实现Abstract Factory的理由 C#2.0-泛型 C#2.0-extern C#2.0-可空类型 C#2.0-分部类 C#2.0-迭代器 C#2.0 的新增功能学习 泛型的序列化问题 .NET 2.0 泛型在实际开发中的一次小应用 C#2.0 Singleton 的实现 .Net Framwork 强类型设计实践 通过反射调用類的方法,屬性,字段,索引器(2種方法) ASP.NET: State Server Gems 完整的动态加载/卸载程序集的解决方案 从NUnit中理解.NET自定义属性的应用(转载) 如何在.NET中实现脚本引擎 (CodeDom篇) .NET的插件机制的简单实现 我对J2EE和.NET的一点理解 难分难舍的DSO(一) InternalsVisibleToAttribute,友元程序集访问属性 Essential .NET 读书笔记 [第一部分] NET FrameWork的Collections支持 .NET的反射在软件设计上的应用 关于跨程序集的反射 实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP.Net应用程序的多进程模型 NET委托:一个C#睡前故事 [推荐] - [原创] Microsoft .NET策略及框架概述 卸载Class? Web Form 窗体 如何实现web页面的提
分页是Web应用程序中最常用到的功能之一,在ASP.NET中,虽然自带了一个可以分页的DataGrid(asp.net 1.1)和GridView(asp.net 2.0)控件,但其分页功能并不尽如人意,如可定制性差、无法通过Url实现分页功能等,而且有时候我们需要对DataList和Repeater甚至自定义数据绑定控件进行分页,手工编写分页代码不但技术难度大、任务繁琐而且代码重用率极低,因此分页已成为许多ASP.NET程序员最头疼的问题之一。 AspNetPager针对ASP.NET分页控件的不足,提出了与众不同的解决asp.net中分页问题的方案,即将分页导航功能与数据显示功能完全独立开来,由用户自己控制数据的获取及显示方式,因此可以被灵活地应用于任何需要实现分页导航功能的地方,如为GridView、DataList以及Repeater等数据绑定控件实现分页、呈现自定义的分页数据以及制作图片浏览程序等,因为AspNetPager控件和数据是独立的,因此要分页的数据可以来自任何数据源,如SQL Server、Oracle、Access、mysql、DB2等数据库以及XML文件、内存数据或缓存中的数据、文件系统等等。 AspNetPager 7.2 版发布 新增属性 PagingButtonLayoutType,可设置分页导航元素(数字页索引、上页、下页、首页和尾页)的布局方式,该属性值是一个PagingButtonLayoutType枚举,通过设置该属性为PagingButtonLayoutType.UnorderedList或PagingButtonLayoutType.Span,允许将这些分页导航元素包含在 与或与标签之间,以便于为这些分页元素应用CSS样式。 新增 PagingButtonClass 与 PagingButtonStyle 属性,可以单独为分页导航按钮(数字页索引、上页、下页、首页和尾页)设置CSS样式; 新增 FirstLastButtonClass 与 FirstLastButtonStyle 属性,可以单独为首页和尾页分页导航按钮设置CSS样式,如果该属性未设置,但指定了PagingButtonClass 与 PagingButtonStyle 属性的值,则首页和尾页按钮样式将使用 PagingButtonClass 与 PagingButtonStyle 属性中指定的样式; 新增 NextPrevButtonClass 与 NextPrevButtonStyle 属性,可以单独为上页和下页分页导航按钮设置CSS样式,如果该属性未设置,但指定了PagingButtonClass 与 PagingButtonStyle 属性的值,则上页和下页按钮样式将使用 PagingButtonClass 与 PagingButtonStyle 属性中指定的样式; 新增 MoreButtonClass 与 MoreButtonStyle 属性,可以单独为更多页(...)分页导航按钮设置CSS样式,如果该属性未设置,但指定了PagingButtonClass 与 PagingButtonStyle 属性的值,则上页和下页按钮样式将使用 PagingButtonClass 与 PagingButtonStyle 属性中指定的样式; 新增属性 ShowMoreButtons ,可以指定是否显示更多页按钮; 新增属性 CurrentPageButtonPosition ,可设置在每次分页后,当前页数字索引在所有的数字页索引中的显示位置,该属性值是一个PagingButtonPosition枚举,对应的值及说明如下: Beginning:当前页数字索引总是显示在所有数字页索引的最前面; End:当前页数字索引总是显示在所有数字页索引的最后面; Center:当前页数字索引总是显示在所有数字页索引的中间; Fixed:默认值,固定不变; 控件的CssClass属性仅应用于控件的窗口元素(div),将不再应用于下属分页元素; 废止属性CenterCurrentPageButton,可以用CurrentPageButtonPosition属性取代; 修改CurrentPageIndexn属性,允许在程序中任何地方以编程方式设置CurrentPageIndex的值来动态指定当前页,直接设置该属性的值时将同时引发PageChanging和PageChanged 事件,实现和点击分页按钮一样的分页功能; 修正了7.1版中设置SubmitButtonImageUrl属性后,Postback回发分页方式情况下点击数字页索引按钮不引发分页事件的bug; 修正了使用Url分页时,如果页面上没有服务器端form控件时无法注册客户端脚本的bug,从7.2版起如果使用Url分页并且ShowPageIndexBox属性没有设置为Never时, AspNetPager控件必须放在 与 标记之间,若使用Url分页并且ShowPageIndexBox为Never时,页面上可以不使用服务器端form控件。 AspNetPager的主要功能: 1、支持通过Url进行分页: AspNetPager除提供默认的类似于DataGrid和GridView的PostBack分页方式外,还支持通过Url进行分页,象大多数asp程序中分页一样, Url分页方式允许用户通过在浏览器地址栏中输入相应的地址即可直接进入指定页面,也可以使搜索引擎搜索到所有分页的页面的内容,因此具有用户友好和搜索引擎友好的优点,关于Url分页与PostBack分页方式的差异,请参考Url与PostBack分页方式的对比。 2、支持Url分页方式下的Url重写(UrlRewrite)功能 Url重写技术可以使显示给用户的Url不同于实际的Url,Url重写技术被广泛应用于搜索引擎优化(SEO)、网站重组后重定向页面路径以及提供用户友好的Url等方面, AspNetPager支持Url重写技术使您可以自定义分页导航的Url格式,实现Url重写; 3、支持使用用户自定义图片做为导航元素:您可以使用自定义的图片文件做为分页控件的导航元素,而不仅仅限于显示文字内容。 4、功能强大灵活、使用方便、可定制性强: AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行代码,甚至无需编写任何代码,只需设置几个属性就可以实现分页功能。 5、增强的 Visual Studio 2005/2008设计时支持增强的设计时支持使控件在设计时更加直观,易于使用,开发快捷方便。 6、兼容IE6.0+及FireFox 1.5+等浏览器 7、丰富而完整的控件文档和示例项目:控件附带的完整的帮助文档及示例项目能够帮助您快速上手,熟悉AspNetPager控件的使用,您还可以通过给作者留言以及论坛提问等方式解决控件使用中遇到的问题。
自由宿主后台管理系统是一套通用后台管理系统,之所以给他加上“宿主”2个字,是因为这套系统本身没有自己的数据库,而必须依赖于其他数据库才能运行,自由指的是系统灵活性强,能够根据数据库表结构做一些简单的配置后系统就能够实现想要的功能。简单的说,就是系统没有根据特定的数据库来设计,你给他套上什么结构的数据库表,他就做什么样的事情。   自由宿主Asp.net网站通用后台管理系统特点如下: 1. 后台本身没有数据库,自己设计数据库后,与后台连接,配置好节点后无需二次开发,直接就可以实现对数据库增删改查功能; 2. 后台密码支持自定义加密/解密算法,可以在设置登录表的时候进行配置; 3. 后台编辑界面可以根据配置自动生成编辑器,同时会自动生成验证脚本; 4. 后台支持多表关联,列表查询时候会自动根据关联字段显示相应内容; 5. 兼容IE6 ,火狐浏览器等主流浏览器; 6. 对数据库表的操作,如增删改查操作只需要进行简单的设置即可完成,无需再进行任何编码实现。   自由宿主Asp.net网站通用后台管理系统3.2正式版更新功能: 1.修正edit.js内容验证无效的bug; 2.添加sqliste数据库支持; 3.修正编辑后返回列表丢失删除功能的Bug; 4.Main页面菜单显示改为json对象传输到前台,然后由menu.js脚本实现菜单展示功能,方便二次开发对界面修改,菜单可以控制允许一次展开多个或者只允许展开一个; 5.修正图片上传后缀名区分大小写的问题; 6.系统生成字符类型主键修改为GUID,主键字段长度至少需要为32位字符; 7.上传文件保存文件名修改为GUID,数据库相印字段长度至少需要为32位字符; 8.配置页面数据库表增加视图的显示; 9.增加省市县联动控件(包括省市县3级联动,省市2级联动和省市(县级可选)联动),通过使用Request[“_tzhp_字段名称”]获取省的区划编码,Request[“_tzhc_字段名称”]获取市的区划编码,Request[“_tzhr_字段名称”]获取区县的区划编码,使用Request[“字段名称”]获取选中的最后级区划编码(写入数据库值)。Area.js脚本为全国省市县名称和区划编码,其中_codeToObject(code)方法可以将区划编码转为区划对象,格式为: { p: {Code, Name, Level}, c: {Code, Name, Level}, r{Code, Name, Level}},其中p为省份信息,c为城市信息,r为区县信息; 10.在授权模式下,列表显示字段如为图片方式上传的,则可以直接显示图片,区划字段将显示为对应的区划名称,没有授权的情况下原样输出; 11.在授权模式下,标题栏将不显示“自由宿主xx”字样; 12.在授权模式下超级管理员后台可以通过配置文件增加功能链接; 13.tzh_tableInfo 和tzh_menuInfo表增加字段“strTbGroup varchar(32)”旧版本升级程序请手动在数据库中添加此列; 14.修正使用Access数据库多个表存在关联且有重复字段名情况下可能出现列表数据为空的情况;   数据库升级方式请参见 http://www.tzhtec.com/art/6f456394186.aspx
<p> <span style="color:#337FE5;"><strong>【为什么还需要学习C++?】</strong></span> </p> <p style="margin-left:0cm;"> 你是否接触很多语言,但从来没有了解过编程语言的本质? </p> <p style="margin-left:0cm;text-align:start;"> 你是否想成为一名资深开发人员,想开发别人做不了的高性能程序? </p> <p style="margin-left:0cm;text-align:start;"> 你是否经常想要窥探大型企业级开发工程的思路,但苦于没有基础只能望洋兴叹? </p> <p style="margin-left:0cm;text-align:start;">   </p> <p style="margin-left:0cm;text-align:start;"> 那么C++就是你个人能力提升,职业之路进阶的不二之选。 </p> <p style="margin-left:0cm;text-align:start;"> <br /> </p> <p style="margin-left:0cm;text-align:start;"> <br /> </p> <p style="margin-left:0cm;"> <strong><span style="color:#337FE5;">【课程特色】</span></strong> </p> <p style="margin-left:0cm;text-align:start;"> 1.课程共19大章节,239课时内容,涵盖数据结构、函数、类、指针、标准库全部知识体系。 </p> <p style="margin-left:0cm;text-align:start;"> 2.带你从知识与思想的层面从0构建C++知识框架,分析大型项目实践思路,为你打下坚实的基础。 </p> <p style="margin-left:0cm;text-align:start;"> 3.李宁老师结合4大国外顶级C++著作的精华为大家推出的《征服C++11》课程。 </p> <p style="margin-left:0cm;text-align:start;"> <br /> </p> <p class="ql-long-24357476"> <span style="color:#337FE5;"><strong>【学完后我将达到什么水平?】</strong></span> </p> <p class="ql-long-24357476"> 1.对C++的各个知识能够熟练配置、开发、部署; </p> <p class="ql-long-24357476"> 2.吊打一切关于C++的笔试面试题; </p> <p class="ql-long-24357476"> 3.面向物联网的“嵌入式”和面向大型化的“分布式”开发,掌握职业钥匙,把握行业先机。 </p> <p class="MsoNoSpacing" style="margin-left:18pt;"> <br /> </p> <div> <br /> </div> <p> <br /> </p> <p style="margin-left:0cm;text-align:start;"> <span style="color:#337FE5;"><strong>【面向人群】</strong></span> </p> <p style="margin-left:0cm;text-align:start;"> <span style="color:#222226;font-family:PingFangSC-Regular, "font-size:14px;background-color:#FFFFFF;">1.希望一站式快速入门的C++初学者;</span> </p> <p style="margin-left:0cm;text-align:start;"> <span style="color:#222226;font-family:PingFangSC-Regular, "font-size:14px;background-color:#FFFFFF;">2.希望快速学习 C++、掌握编程要义、修炼内功的开发者;</span> </p> <p style="margin-left:0cm;text-align:start;"> <span style="color:#222226;font-family:PingFangSC-Regular, "font-size:14px;background-color:#FFFFFF;">3.有志于挑战更高级的开发项目,成为资深开发的工程师。</span> </p> <p style="margin-left:0cm;text-align:start;"> <br /> </p> <p> <br /> </p> <p> <span style="color:#337FE5;"><strong>【课程设计】</strong></span> </p> <p> 本课程包含3大模块 </p> <p> <strong>基础篇</strong><br /> 本篇主要讲解c++的基础概念,包含数据类型、运算符等基本语法,数组、指针、字符串等基本词法,循环、函数、类等基本句法等。 </p> <p> <br /> <strong>进阶篇</strong><br /> 本篇主要讲解编程中常用的一些技能,包含类的高级技术、类的继承、编译链接和命名空间等。 </p> <p> <br /> <strong>提升篇:</strong><br /> 本篇可以帮助学员更加高效的进行c++开发,其中包含类型转换、文件操作、异常处理、代码重用等内容。 </p> <p> <img src="https://img-bss.csdnimg.cn/202007091130239667.png" alt="" /> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页