没有合适的资源?快使用搜索试试~ 我知道了~
ASP.Net程序设计(新) 《ASP.NET程序设计》_常见问题及解答.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 201 浏览量
2022-07-12
15:45:02
上传
评论
收藏 286KB DOC 举报
温馨提示
试读
16页
ASP.Net程序设计(新) 《ASP.NET程序设计》_常见问题及解答.doc 学习资料 复习资料 教学资源
资源推荐
资源详情
资源评论
《ASP.NET 程序设计》常见问题与解答
Q1:ASP.NET 2.0中CSS失效解决方案?
A1:经常有人遇到ASP.NET 2.0(ASP.NET 1.x中可能是有效的)中CSS失效的问题,现将主要原因和解决方法
罗列如下:
1.CSS文件路径不正确
这个问题属于Web开发中的基础问题,一般采用相对路径会出现这样的问题,或者样式文件写在了模
板页里面,在内容页与模板页不在同一级目录下时会出现这样的问题。此时你要清楚Web中相对路径的规
则,如果你不清楚,可以采用绝对路径的写法试试就知道是不是路径的问题了。
2.CSS规则写法错误
认真学习CSS的相关知识。
3.文件编码问题
有时候,CSS样式放在aspx文件里有效,而放在独立的文件中无效,这样的问题如果不是路径问题,
则就是编码问题造成的,可以将CSS文件用记事本打开,再另存为ANSI格式或者UTF-8格式即可。
4.权限问题
这种情况常见的现象是登录之前样式无效,登录之后才有效,这是典型的权限问题造成的。由于
web.config配置了所有文件不允许匿名访问,才会出现这样的问题,解决方法就是是标记将样式文件配置
为允许匿名访问。例如:
以下是引用片段:
<configuration>
<locationpath="允许匿名访问的文件夹名称">
<system.web>
<authorization>
<allowusers="?"/>
</authorization>
</system.web>
</location>
</configuration>
5.单击按钮样式失效
这种情况最典型的原因是单击按钮事件里有类似Response.Write这样的语句,由于ASP.NET 2.0默认采
用http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd文档类型定义,它就要求在<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">的前面不能有任何输出。这种问题的解
决方法是采用ClientScriptManager输出,或者采用Literal控件输出内容。
6.在ASP.NET 1.x里面起作用的样式到ASP.NET 2.0里面失效
这种问题一般仍然是xhtml1造成的,由于
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd的样式规则与以前的不同,如要加单位,
例如width:200;现在要写成width:200px;这种问题的解决方法就是要明确加上单位。
7.脚本设置的样式无效
由于xhtml1.DTD要求有单位,因此在设置对象样式的数值时,仍然要加上单位,如obj.style.width =
"200px"。下面的代码在Firefox里是无效的
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DT
D/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<scripttype="text/javascript">
//<![CDATA[
functionSetHeight()
{
document.getElementById("x").style.height="200"
}
//]]>
</script>
</head>
<body>
<divid="x"style="background:#DDD;height:auto;">测试</div>
<inputtype="button"value="设置"onclick="SetHeight()"/>
</body>
</html>
尽管上面在IE中正常,但在Firefox里面则会出现问题。正确写法为:
document.getElementById("x").style.height="200px"
Q2:VC2008的工程到底如何用vc2005打开?
A2: 我们都很清楚的是低版本的程序文件可以在高版本的程序运行环境中打开,但反过来,若我们手头
的是高版本的程序文件如:Visual Studio2008工程,如何在低版本的程序运行环境中打开?
具体做法:首先,记事本打开解决方案文件(解决方案名称.sln),找到如下代码:
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
将其手动更改为:
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
保存即可。
Q3:如何更加有效地学习ASP.NET技术?
A3:要成为一个优秀的ASP.NET程序员,不仅要掌握.NET框架,理解ASP.NET的原理,而且要对DHTML架轻
就熟,甚至对各种浏览器之间的差异也要有所了解,所以做ASP.NET程序员是一件很有挑战的工作。那么
如何学习ASP.NET,并最终成为优秀的ASP.NET程序员呢?
我认为可以分为两个步骤来走:首先,熟悉ASP.NET各种标准控件的用法,了解ASP.NET工作原理。接
着,朝“内”和“外”两个方向扩展自己的知识和技能。
在Visual Studio .NET这样优秀的IDE帮助下,我们使用各种ASP.NET控件,掌握ASP.NET基本的工作原
理应该是比较容易的。如能辅以几个简单的项目练习一下比较复杂的GridView、DataList等数据绑定控件
的话,基本掌握ASP.NET是应该没有多大问题的。
之后,我们就可以朝两个进阶方向前进了。“修内”的话,深刻理解面向对象的编程思想是必修的,
然后是各种的B/S框架的模式(比如MVC)的理解,最后是设计模式等等软件工程的概念和技术。“修外”
则更重实践。首先,做项目时注意把一些可以实现在客户端的逻辑用DHTML在客户端实现出来,以此掌握
结合服务端、客户端技术的方法,加深对HTML的DOM对象的理解,熟练常用的JavaScript技巧。进而练习
对Web界面的结构、数据、表现三者进行分离的规划、设计与实现。
如此看来,学习ASP.NET也并不是一件很难的事情,注意“为人写程序”,“内外兼修”,自然就能做
出合格的应用程序。
Q4: ASP.NET页面间数据传递有那些常用方法?
A4:Web 页面是无状态的, 服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页
面的多次请求之间或在页面跳转时不会被保留。在用 ASP.NET 设计开发一个 Web 系统时, 遇到一个重要的
问题是如何保证数据在页面间进行正确、安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决
保存和传递数据问题,以下来探讨.NET 下解决此问题的各种方法和各自的适用场合。
ASP.NET页面间数据传递的各种方法和分析:
(1) 使用Querystring 方法
QueryString 也叫查询字符串, 这种方法将要传递的数据附加在网页地址(URL)后面进行传递。如页
面A.aspx 跳转到页面B.aspx,可以用Request.Redirect("B.aspx?参数名称=参数值")方法,也可以用超链
接:,页面跳转后,在目标页面中可用Ruquest["参数名称"]来接收参数。使用QuerySting 方法的优点是实
现简单, 不使用服务器资源;缺点是传递的值会显示在浏览器的地址栏上,有被篡改的风险,不能传递对
象,只有在通过URL 请求页时查询字符串才是可行的。
(2) 利用隐藏域
隐藏域不会显示在用户的浏览器中, 一般是在页面中加入一个隐藏控件, 与服务器进行交互时把值
赋给隐藏控件并提交给下一页面。隐藏域可以是任何存储在网页中的与网页有关的信息的存储库。使用隐
藏域存入数值时用:hidden 控件。value=数值,取出接收数值时用:变量=hidden 控件。value。使用隐
藏域的优点是实现简单, 隐藏域是标准的HTML 控件,不需要复杂的编程逻辑。隐藏域在页上存储和读取,
不需要任何服务器资源,几乎所有浏览器和客户端设备都支持具有隐藏域的窗体。缺点是存储结构少,仅
仅支持简单的数据结构,存储量少,因为它被存储在页面本身,所以无法存储较大的值,而且大的数据量
会受到防火墙和代理的阻止。
(3) ViewState
ViewState 是由ASP.NET 页面框架管理的一个隐藏的窗体字段。当ASP.NET 执行某个页面时,该页面
上的ViewState 值和所有控件将被收集并格式化成一个编码字符串, 然后被分配给隐藏窗体字段的值属性。
使用ViewState 传递数据时可用:ViewState [" 变量名"]=数值,在取出数据时用:变量=ViewState["变
量名"]。使用ViewState 的优点是:在对同一页的多个请求间自动保留值,不用服务器端资源,实现简单,
视图状态中的值经过哈希计算和压缩,并且针对Unicode 实现进行编码,其安全性要高于使用隐藏域;缺点
是因为ViewState 存储在页面本身,因此如果存储较大的值,用户显示页和发送页时的速度可能会减慢。
虽然视图状态以哈希格式存储数据,但它仍可以被篡改。
(4) 使用Cookie
Cookie 可以在页面之间传递少量信息, 可以存储在客户端的文本文件中,也可存储在客户端的内存
中。Cookie 方法适用于存储少量页面中经常改动的信息, 如为登陆过的网站保存登陆用户名,为用户输
入提供方便,还有在一些用户自定义项目上保存用户的个性化设置。使用Cookie传递数据时可用:
Response.Cookies["键名"]=键值;取出数据用:变量名=Request.Cookies["键名"]。使用Cookie 优点是:
Cookie 存储在客户端, 不使用服务器资源,实现简单,可配置到期时间。缺点是:可以存储的数据量比
较少,由于Cookie 并不被所有的浏览器支持,而且还可能被用户禁止或删除,所以不能用于保存关键数据。
另外,Cookie 保存的形式是简单的明文文本,在它里面不宜保存敏感的、未加密的 数据。
(5) 使用application 变量
使用Application 变量也可以实现页面间的传值,Application变量是全局性的,所有用户共享一个
Application 变量,一旦定义,它将影响到程序的所有部分。如果想在整个应用程序范围使用某个变量值
Application 对象将是最佳的选择。存入数据时, 把值添加到Application 变量里:Application["变量
名"]=数值;取出数据用:变量=Application["变量名"];在不需要使用该Application 时,要显式清除它:
Application["量名"]=null。
Application 优点:易于使用,全局范围。可供应用程序中的所有页来访问。缺点:若保存数据的服
务器端进程被损坏(如因服务器崩溃、升级或关闭而损坏),那么数据就会丢失,所以利用Application 一
定要有保底的策略;占用服务器端的内存,这可能会影响服务器的性能以及应用程序的可伸缩性。
Q5: ASP.NET MVC框架技术较传统上的ASP.NET Web 技术有什么优势?
A5:2008年3月微软针对ASP.NET 3.5发布的MVC框架(Preview 2 版本)是一个真正意义上的ASP.NET MVC框
架。至今,短短4个月内此框架已经发展到Preview 4版本。许多国内外业界人士称该框架为其前基于Web表
单开发模式的历史性“颠覆”。
(1) ASP.NET Web表单方案存在的问题
ASP.NET Web表单方案存在哪些方面的不足呢?Web表单的指导思想是把Windows桌面应用中的表单模
型引入到Web应用程序的开发中。这种模型很快就吸引了大批的传统Windows桌面应用开发程序员,特别是
以前的VB 6.0程序员。今天,许多VB 6.0开发者已经转到了ASP.NET Web开发领域,但是他们并没有基本的HTTP
与Web基本知识。为了模拟传统型Windows桌面应用程序中的表单开发体验,Web表单引入了事件驱动的方
法,而且还引入了Viewstate和Postback等相关概念。最终,Web表单技术知彻底地攻克了Web中无状态特
征这个难关。随之而来的是,Viewstate和Postback带来了大量的问题,从而提高了Web应用程序开发的复
杂性。例如,即使一些非常简单的Web页面也有可能产生大于100KB尺寸的Viewstate,这当然会在某些情
剩余15页未读,继续阅读
资源评论
努力搬砖的小王
- 粉丝: 16
- 资源: 7706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功