使用asp.net,会有各种程序源码文件。它们各有不同的作用,也有不同的源码文件扩展名。
aspx:
Aspx是浏览器直接访问的页面,对应web page。有iis处理成html内容输出
ascx:
Ascx
ashx:
Ashx是一个专门用于处理http请求(HttpRequest)和修改(HttpResponse)响应(handling HttpRequests and modifying HttpResponses)的文件类型,用来处理自定义的Http请求,可以在web.config定义运行时针对ashx的Http请求处理方式、
<add verb="*" path="*.ashx" type="namespace.class,assembly" validate="false"/>
这样我们就可以用assemly文件中的namespace下的class对应的类来处理ashx的http请求了,对http内容进行特别的处理。
从而免去了普通aspx页面的控件解析和页面处理的过程。比如特别适合生成动态图片、添加特别的动态文本等内容,给图片添加水印,登录检查。
asmx:
asms
ASP.net使用asmx文件来对WebServices的支持。
====
在asp.net mvc开发框架下,web service依然得到支持,但同时也支持soa开发框架的wcf。而准对新的开发,asmx并不被推荐了,ms对新的开发,推荐使用mcf来实现webservice。但准对现在的发展,web api是更好的寻找。
axd:
The.axd
extension is used by generated web services used for many different things. (E.g. MVC3 usesaxd
web services to serve MS specific javascript)
svc:
这是mcf(Microsoft Communication Fundation)源码文件, wcf is forSOA development. WCF supports SOAP, REST and a lot of other cool stuff.