[转帖] ASP ASPX 等知识
asp、asp.net、.aspx、.ascx、.ashx的简单说明
https://www.cnblogs.com/jhcelue/p/6736147.html
ASP是动态server页面(Active Server Page)的英文缩写。[1]是微软公司开发的取代CGI脚本程序的一种应用。它能够与数据库和其他程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp。如今经常使用于各种动态站点中。
ASP.NET是由微软在·NETFramework框架中所提供,开发Web应用程序的类库,封装在System.Web.dll文件里。显露出System.Web命名空间。并提供ASP.NET网页处理、扩充以及HTTP通道的应用程序与通信处理等工作,以及WebService的基础架构。ASP.NET是ASP技术的后继者,但它的发展性要比ASP技术要强大很多!
.aspx文件是微软的在server端运行的动态网页文件。通过IIS解析运行后能够得到动态页面。是微软推出的一种新的网络编程方法,而不是asp的简单升级,由于它的编程方法和asp有非常大的不同。他是在server端靠server编译运行的程序代码.
asp与aspx的差别
.asp是asp的文件后缀名
.aspx是asp.net的文件后缀名
说直白些,这样的文件就是动态的网页~
asp.net又叫 asp+ 是动态网络编程的一种设计语言。
所谓动态网 就如 bbs 留言板聊天室等等```
能够用 asp,php,jsp.net来写
那么你提到到的asp就是asp.net的前身了~~~
假设你初学 建议直接学asp.net他支持非常多语言的编写 比方java c# vb.net 功能非常强
效率比asp高。visual studio.net支持编写,程序结构清晰 。开发简单(主要是他控件功能强大)安全性也高(他程序必须都在server端执行)
.ascx是asp.net的用户控件,是作为一种封装了特定功能和行为(这两者要被用在Web应用程序的各种页面上)的Web页面被开发的。一个用户控件包括了html、代码和其它Web或者用户控件的组合,并在Webserver上以自己的文件格式保存,其扩展名是*.ascx。asp.net里的缺省配置并不同意Webclient通过url来訪问这些文件。可是这个站点的其它页面能够集成这些文件中所包括的功能。
.ashx文件是主要用来写web handler的。
使用.ashx 能够让你专注于编程而不用管相关的web技术。我们熟知的.aspx是要做html控件树解析的。.aspx包括的全部html实际上是一个类,全部的html都是类里面的成员。这个过程在.ashx是不须要的。ashx必须包括IsReusable属性(这个属性代表是否可复用,通常为true),而假设要在ashx文件用使用Session必须实现IRequiresSessionState接口.
aspx要将前后台显示和处理逻辑分开,所以就弄成了两个文件,事实上,在终于编译的时候,aspx和cs还是会编译到同一个类中去.这中间就要设计html的一些逻辑处理。而ashx不同,它仅仅是简单的对web http请求的直接返回你想要返回的结果.比aspx少处理了html的过程(可是ashx也能够处理html的一些逻辑,仅仅是通常都不这么用)。
理论上ashx比aspx要快。
还是在同样的旧文里,我们知道传输数据的几种方式,事实上ashx都能够实现(改动ashx文件中context.Response.ContentType 就可以),这里不再赘述了。ashx特别适合于生成动态图片,生成动态文本(纯文本,json,xml。javascript等就可以)等。
.ashx文件有个缺点:它处理控件的回发事件很麻烦。处理数据的回发。通常都须要一些.aspx页的功能,仅仅有自己手动处理这些功能(还不如直接建一个aspx文件来处理)。
所以,一般使用.ashx输出一些不须要回发处理的项目就可以。
小结:
aspx-->P(Page)
ascx-->C(Control)
ashx-->H(HttpHandler)
当浏览器訪问webserver。我们终于接收到的还是html文本。
浏览器通过渲染引擎解释这些标签。在屏幕上展现出可见的效果。而asp.net只是就是我们应用的一种平台技术来"变相"解释html的,说白了它就是为了提高生产率,它的技术术语再多,本质上还是html范畴内的东西(假设你不通过那些动态页面技术全然利用html和浏览器(当然包含js)技术来实现动态页面效果。那么你会发现效果有了代码量也相当可观).所以说web开发的底层就是一堆的html标签,不管是asp.net还是jsp都是对html某种方式的包装,是html的产物。
asp与aspx哪个好?
https://www.cnblogs.com/acetaohai123/p/6571251.html
最佳答案
你如果想知道哪个好,我想很多人第一个想法就是aspx好。
这很好理解,就像楼上的朋友说的,aspx是asp的升级版。
但是aspx相对于asp的升级可以说是从根本上的升级,aspx至少在语法方面与asp的差别非常的大。
我说一下我的观点:
如果你开发的项目要求功能不强,比如发布产品信息、客户留言之类的普通功能,使用asp比使用aspx可能会节省更多的时间,如果让我选择,我还是会选择asp。
但是毕竟asp可能是十多年(记不清)前产品了,在功能上无法与aspx相比。
有些对功能要求很强的项目,还是需要aspx来完成。
举个最简单的例子,在服务器端如果对图片进行缩放、裁剪等操作,asp本身是无法完成的,需要配合别的软件来完成,但aspx本身就具有对图片操作的功能。
[转帖] ASP ASPX 等知识的更多相关文章
- Cookie详解、ASP.NET核心知识(7)
无状态的http协议 1.回顾http协议 Http协议是请求响应式的,有请求才有响应,是无状态的,不会记得上次和网页“发生了什么”. 关于http协议的这种特点,黑兔在前面的这三篇博文中进行了详细的 ...
- ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法
这个编辑器按脚本分主要有4个版本,ASP/ASPX/PHP/JSP 每个版本都有可以利用的漏洞.判断网站是否使用了eWebEditor查看程序源代码,看看源码中是否存在类似”ewebeditor.as ...
- ASP.NET基础知识汇总之WebConfig自定义节点详细介绍
之前介绍过Webconfig的具体知识ASP.NET基础知识汇总之WebConfig各节点介绍.今天准备封装一个ConfigHelper类,涉及到了自定义节点的东东,平时虽然一直用,但也没有系统的总结 ...
- ASP.NET基础知识汇总之WebConfig各节点介绍
web.config虽然一直用,接触最多的也就是节点appSettings和connectionSettings,今天系统的梳理一下,了解一下webconfig各个节点的含义,先简单的浏览一下具体的w ...
- Asp.Net碎知识
在aspx页面 获取值: UserModel user=new UserModel();实例化 user.Address=context["txtAddress"]; 如果前台不需 ...
- Deformity ASP/ASPX Webshell、Webshell Hidden Learning
catalog . Active Server Page(ASP) . ASP.NET . ASP WEBSHELL变形方式 . ASPX WEBSHELL变形方式 . webshell中常见的编码转 ...
- 网络基础知识、ASP.NET 核心知识(1)*
为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...
- Asp.net MVC知识积累
一.知识积累 http://yuangang.cnblogs.com/ 跟蓝狐学mvc教程专题目录:http://www.lanhusoft.com/Article/169.html 依赖注入:htt ...
- [转帖]Asp.NET 弹出页面
原文链接:http://www.cnblogs.com/adi-liu/archive/2008/07/18/1246091.html ASP.NET 弹出对话框和页面之间传递值的经验总结 今天碰到一 ...
随机推荐
- js中typeof与instanceof用法小记
今天写JS代码,遇到动态生成多个名称相同的input复选按钮 需要判断其是否是数组,用到了if (typeof(document.MapCheckMgr.checkid)!="undefin ...
- 深入springboot原理——一步步分析springboot启动机制(starter机制)
前言 使用过springboot的同学应该已经知道,springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程.本文的目的就是一步步分析springboot的启动过程 ...
- Java基础之集合篇(模块记忆、精要分析)
千里之行,始于足下.把别人的变成自己,再把自己的分享给别人,这也是一次提升的过程.本文的目的是以一篇文章从整体把握集合体系又不失一些细节上的实现,高手路过. 集合的作用与特点 Java是一门面向对象语 ...
- Vue.js项目脚手架构建
vue.js文档:https://cn.vuejs.org/v2/guide/ 参考这个或者参考菜鸟教程也可以,不过还是那句话官网权威. 我这个主要是看相关的学习视频搭建的. 一.环境准备 环境准备( ...
- 使用命令行编译QT helloworld 项目
0.新建工程项目 在E盘的QTworkspace文件夹下新建一个子文件夹HelloWorld,并在该文件夹中新建一个main.cpp文件,cpp文件中写入以下代码(保存时注意将编码选择为UTF-8): ...
- Winform 基础一 panel
一 居上.居中.居下 二 添加子控件 三 适应不同分辨率 四 内容超出,显示滚动条 一 .居上.居中.居下 二.添加子页面 Form7 childFrm = new Form7(); childFrm ...
- Luogu P1962 斐波那契数列(矩阵乘法模板)
传送门(其实就是求斐波那契数列....) 累了 明天再解释 做这道题需要一些关于矩阵乘法的基础知识. 1. 矩阵乘法的基础运算 只有当矩阵A的列数等于矩阵B的行数时,A与B可以相乘(A的行数不一定等于 ...
- 解决Skyline6.5多球对比时,自动运行TerraExplorer软件的问题
如果你的操作系统是Win7 64位,在运行Skyline6.5提供的ITE3DWindowEx控件实现多球对比时,启动程序调试运行时,却自动运行了TerraExplorer软件, 这时候你会发现for ...
- ASP.NET的生命周期
我主要参考了这些文章 ASP.NET应用程序与页面生命周期, IIS处理Asp.net请求和 Asp.net页面生命周期 asp.net页面的生命周期 页面生命周期开始 (一)页面生命周期的主要阶段包 ...
- c语言程序设计 第一例子
#include <studio.h> int main(){ printf("this is dog.\n"); return 0; } studio.h 表示st ...