新技术应该有新技术的做法, 进入ASP.NET的世界, 就应该把以往的习惯改正, 全新的进入新的世界.
以下列举的都是错误的做法, 请不要误以为是推荐的做法而进行推广:
1. 使用server side include给ASPX引入共同的页面构图.
在ASP.NET的机制下, 应使用ASCX(web user control)来实现. ASCX提供了更多可控制接口. 并且更重要的是, ASCX是一个类. 一个实实在在的类. 可以全面控制它.
2.不使用web.config
web.config提供了 非常丰富的配置管理接口. 是一个应用程序最核心的部分. 但是很多人的web.config往往是空的. 或者就从来没有修改过.
3.使用Response.Write向前端输出消息
ASP.NET平台下的Response和ASP的Response有很大的不同. 虽然表示同一含义, 但用法上已经大不相同. Response.Write的内容只会输出到页的最前端. 向前端输出消息的正确方法是使用PlaceHolder.
4.使用一系列session管理用户连接状态
这种方法在 ASP里被滥用. 在ASP.NET环境下, 正确的做法应该是设计一个类. 结构化地保存数据. 将对session或者cookie的访问封装起来.
5.使用session验证身份
这几乎是通病. ASP.NET提供了一组用于用户身份验证的API. 类型是forms验证或者windows验证. 这一点quick start有一节讲解得很清楚. 可以绝大部分人还是依靠给session赋值来保持用户身份验证状态.
6.使用Response.Redirect重定向页
这一点 在必要的时候可以使用. 但不可滥用. 事实证明滥用重定向将导致逻辑上的严重混乱. 这是在以页为程序单元的时候的做法. 使用front controller模式将使用户的操作逻辑集中起来]
7.使用太多ASPX页
ASP环境下的程序单元只 有*.asp页, ASP.NET可不是这样, 还有后端的类库, ASCX等等. 应将业务逻辑分别集中在不同的单元, 而不应该一项操作使用一个ASPX. 更多时候ASPX将做为ASCX或者custom control的容器而管理页内逻辑. ASPX重用ASCX的同时, ASPX也做为统一的页构图重用.
8.在多个逻辑单元之间复制代码并修改相应逻辑
重用. 重用. 重用. 处理此类问题的原则是不出现任何相同或相似的过程. 如果你用上面的方法, 一旦出现重大逻辑更改, 带来的结果将是灾难性的.
9.害怕使用DataSet.
很多人被DataSet吓坏 了. 认为”肯定”影响性能. 但连最初的尝试都不敢. 他们总认为他们的产品一定重大, 设计上应该”慎重”. 他们往往使用ArrayList或者设计低级的类来保存集合数据. 进行艰难的数据倒入工作.
10.对“性能”过多注意.
对ASP.NET ViewState的机制特别不满. 或者总是挖空心思迫害人家. 反倒把自己弄得很累. 如果在对付ViewState的同时多注意少连几次数据库也许更文明些.
11.应用程序根目录很乱.
ASP.NET是开发项目. 不是网站. 应该把不同的资源分类放置. 例如把所有静态资源(样式表, 脚本, 图像)组织到一起. 甚至可以写一组API来管理他们. ASPX应该放在一起. ASCX应该放在一起. .*.cs呢? 应该把他们放到另外一个project里.
12.不厌其烦的写访问数据库的过程
应该把这工作交给 DataAccess Application Block. 你自己还要开关connection, 何苦呢.
13.自己写的东西最靠得住.
事实往往正好相反. 多注意使用人家写好的产品. 又不收你钱, 何苦那么爱面子呢.
14. 胡乱命名ASPX文件名
这是最让人痛苦的了. ASPX文件名不仅需要容易识别. 还应该遵循一定规则. 因为behind每个ASPX都会有一个同名的类, 想象一下, 多难受. 另外大部分人不知道管理自己的项目的name space. 让人好像看到一本帐一样.
15.从来不作继承或派生
一些具有相同行为的类, 应该从公共的基类派生出来. 实际意义上, 我们的ASPX应该有一个基类PageBase. 因为总有一些公共的特性需要抽象出来.
16.零property
他们的类(ASPX所对应)里只有 private method. 不公开自己的任何秘密. 可以这一定是JAVA的遗老干的事.
17. 零ASCX
不用说, 他还没学会ASP.NET
18.使用DreamWeaver“画“ASPX
这批人是美 工. 甚至有一些人在非常陶醉地讨论如何更好地“整合“ DreamWeaver和Visual Studio.
19.只熟悉System.Web.UI.WebControl和 System.Data.SqlClient应该还有一些值得熟悉的类库.
20.零注释
这些都是心里很明白的快手. 一任IDE生成的缺省注释横在那里不管.
21.零事件
对“事件驱动“一无所知. 只知道在Page_Load()里写过程. 或者双击一个按钮写Xxx_Clock()过程. 在他们的程序里看不到event和delegate.
相关推荐
别再让信号‘撞墙’了!手把手教你用嘉立创阻抗计算器搞定PCB高速线(附免费压层结构选择)
本文详细介绍了如何使用嘉立创阻抗计算器解决PCB高速线设计中的阻抗匹配问题,避免信号反射和传输损耗。通过免费压层结构选择和五步计算法,帮助工程师快速掌握USB3.0差分线等高速信号的设计技巧,提升PCB设计效率和信号质量。
.net编码技巧总结
<br />1.得到n个字符的字符串:<br />string zero=new string('0',5); //得到5个0的字符串<br />
YOLO11优化:TGRS2026 CKConv结合C3k2 | 方向特征与跨阶段融合协同,小目标漏检率大幅下降
多尺度适配小目标尺寸变化:在 C3k2 不同阶段配置 CKConv 不同核尺度(浅层小核捕获精细纹理,深层大核聚合上下文),兼顾局部细节与全局感知,提升对舰船、车辆等小尺寸目标及红外热目标的检测鲁棒性。
ASP编码者学习ASP.net编码要注意的一些地方
在技术更新的进程中, 仍然有一些人死抱着已经过了气的东西不放. 也有一些人虽然进入到新的世界, 但仍摆脱不了陈旧的习惯. 我没有用”陋习”这个词, 因为我对这个词也非常反感. 新技术应该有新技术的做法, 进入ASP.NET的世界, 就应该把以往的习惯改正, 全新的进入新的世界. 以下列举的都是错误的做法, 请不要误以为是推荐的做法而进行推广: 1. 使用server side i
ASP.NET中的HTML编码和URL编码
导 读:Server.HTMLEncode 和 Server.URLEncode 是ASP中很常用的函数,在ASP.NET中也有类似的函数:HtmlEncode 和 UrlEncode (注意大小写)以下用实例来进行介绍。 Server.HTMLEncode and Server.URLEncode are very common functions used by ASP developers.
asp.net html编码格式,ASP.NET中的HTML编码和URL编码
导 读:Server.HTMLEncode 和 Server.URLEncode 是ASP中很常用的函数,在ASP.NET中也有类似的函数:HtmlEncode 和 UrlEncode (注意大小写)以下用实例来进行介绍。Server.HTMLEncode and Server.URLEncode are very common functions usedby ASP developers. W...
.net html 编码格式,ASP.NET 中的 HTML 编码
导 读:server.htmlencode 和 server.urlencode 是asp中很常用的函数,在asp.net中也有类似的函数:htmlencode 和 urlencode (注意大小写)以下用实例来进行介绍。server.htmlencode and server.urlencode are very common functions used by asp developers. ...
asp.net IHttpHandler 对分块传输编码的支持,IIs web服务器后端技术
IHttpHandler,不支持分块传输编码(Chunked Transfer)吧?框架会自动处理分块协议的细节,让开发者可以像处理普通请求一样操作数据流。会自动处理分块解析,你可以像读取普通请求流一样读取数据:vb。若需处理更大的分块请求,需在。分块传输是 HTTP/1.1 协议的特性,允许服务器在。若需要多次访问请求体,需先将流缓存到内存或文件:vb。长时间的分块传输可能触发请求超时,需调整。当客户端使用分块编码上传数据时,如果分块请求中包含表单数据(如。,无论是请求还是响应。,无需手动处理分块。
ASP.NET学习总结
ASP.NET学习总结 ASP.NET视频看完了,总结一下这些天的学习的学习成果。 一、什么是ASP.NET (1)百度百科的解释: ASP.NET是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。
在ASP.NET中防止注入攻击
目的:输入的字串长度,范围,格式和类型进行约束. 在开发ASP.NET程序时使用请求验证防止注入攻击. 使用ASP.NET验证控件进行输入验证. 对不安全的输出编码. 使用命令参数集模式防止注入攻击. 防止错误的详细信息被返回到客户端. 概述 : 你应该在程序中验证所有的不信任输入.你应该假定所有的用户输入都是非法的.用户可以在应用程序中提供表单字段,查询字串,客户端cook
VS2010与.NET4系列 19.ASP.NET4中新的HTML编码的<%: %>语法
今天介绍ASP.NET 4引入的新的语法特性——即在代码块中自动产生HTML编码输出的能力。这可以帮助保护应用程序和站点免受跨站点脚本(XSS)注入和HTML注入攻击,并使你能够使用简洁的语法来做到这一点。 HTML编码 跨站点脚本注入(XSS)和HTML编码攻击是两个最常见的折磨网站和应用程序的安全性问题。当黑客发现了一个可以把客户端脚本或HTML标记注入到页面的方法,随后其他访问者查看此页...
把ASP.NET安全与经典ASP和非ASP.NET URLs集成
【原文地址】Tip/Trick: Integrating ASP.NET Security with Classic ASP and Non-ASP.NET URLs 【原文发表日期】 Sunday, March 04, 2007 6:17 PM 别人经常问我的一个问题是,“我怎么能把ASP.NET安全与经典ASP和其他非ASP.NET URLs集成起来?” 具体地来说,他们想知道他们是否能把
ASP.NET网页播放器实现指南
为了实现更丰富的用户交互和定制功能,可以通过JavaScript和CSS来增强<video>和<audio>元素的表现。例如,使用JavaScript监听事件、控制播放、设置播放列表等,以及使用CSS进行样式定制,以适应不同的界面设计。选择合适的JavaScript库可以大大简化开发过程。对于视频播放器功能的实现,有几个流行的库可以考虑:Video.js: 是一个开源的HTML5视频播放器库,它提供了一个兼容多种浏览器的播放器界面,并且支持自定义皮肤。JW Player。
【Asp.Net】五大对象
学习Asp.Net时候,亲爱的于老师讲解了五大对象。趁着知识还没有忘记,趁热打铁,好好的总结一下。下面跟着我学习一下Asp.Net的五大对象。 Application 在没有学习Asp.Net之前就已经知道了Application这个东东,但是当时不是很了解,也不知道到底是什么,学习了Asp.Net才知道它是其中的一个对象。 Application:全局应用程序类。在服务器内存中存储数量
在ASP.net页面引用js时的注意事项
在ASP.NET页面中经常需要链入一些JS文件,如: 如果在JS里有中文的话,在一般情况下,在浏览器里会报错脚本错误. 如果不信可以自己试一试。 其实是这样的: 由VS.NET自动生成的项目里,Web.Config中有这么一段:globalization requestEncoding="utf-8"responseEncoding="utf-8"/> 它定义了该应用发送和接收的流都以utf-
关于Asp与Asp.NET共享Cookie需要注意的地方
首先Asp程序发送到客户端的Cookie是进行UrlEncode后的,因此在Asp.net读取时应该采用UrlDecode进行还原, 另外Asp.Net生成的Cookie比方用于Form认证的Cookie根据配置,有可能是经过加密的,因此在Asp中读取时要根据相应算法进行解密. 转载于:https://www.cnblogs.com/wdfrog/archive/2007/12/27/101...
encodeURIcomponent编码和ASP.NET之间编码转换
<br />Javascript的URL编码转换,escape() encodeURI() encodeURIComponent(),asp.net 的UrlDecode进行解码 。<br />本文介绍对url编码的三种函数 escape() ,encodeURI() ,encodeURIComponent()<br />escape() 方法:<br />采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该
ASP.NET中的URL编码解码
在对URL进行编码时,该用哪一个?这两都使用上有什么区别吗? 测试: string file="文件上(传)篇.doc"; string Server_UrlEncode=Server.UrlEncode(file); string Server_UrlDecode=Server.UrlDecode(Server_UrlEncode); string HttpUtility_UrlEncode=...
ASP.NET web网页基础
一些关于ASP.NET的基础介绍与使用
236




被折叠的 条评论
为什么被折叠?



