简体   繁体   English

.NET 可扩展性和 ASP.NET 之间的区别

[英]Difference between .NET Extensibility and ASP.NET

In the Windows Features control panel applet, under Internet Information Services → World Wide Web Services → Application Development Features, there are two options: ".NET Extensibility" and "ASP.NET".在 Windows 功能控制面板小程序中,在 Internet 信息服务 → 万维网服务 → 应用程序开发功能下,有两个选项:“.NET 扩展性”和“ASP.NET”。

What is the difference between these two options?这两个选项有什么区别? If I'm developing simple ASP.NET web applications / services, is there any need for the .NET Extensibility option?如果我正在开发简单的 ASP.NET Web 应用程序/服务,是否需要 .NET 扩展性选项?

I Google'd the terms, and came up with this link:我谷歌了条款,并想出了这个链接:

http://forums.iis.net/t/1146942.aspx http://forums.iis.net/t/1146942.aspx

This link confuses me, because the response (from a supposed Microsoft employee) says that to test for .NET Extensibility, you create a simple ASPX page, and try to load it.这个链接让我很困惑,因为响应(来自一个假定的 Microsoft 员工)说要测试 .NET 可扩展性,你创建一个简单的 ASPX 页面,并尝试加载它。 That seems (to ME) more like a test for the ASP.NET option.这似乎(对我来说)更像是对 ASP.NET 选项的测试。

Any clues?有什么线索吗?

In versions of IIS prior to 7.0, the ASP.NET pipeline was separate from the web server's request processing pipeline.在 7.0 之前的 IIS 版本中,ASP.NET 管道与 Web 服务器的请求处理管道是分开的。 The web server's functionality was usually extended via ISAPI filters and extensions . Web 服务器的功能通常通过 ISAPI过滤器扩展来扩展

However, in IIS 7.x they are more tightly integrated, which allows for the server to be extended using managed code, via the ASP.NET extensibility APIs.但是,在 IIS 7.x 中,它们更紧密地集成在一起,允许通过 ASP.NET 可扩展性 API 使用托管代码扩展服务器。 Two primary ways this can be done are via modules and handlers, which are quite similar to ISAPI filters and extensions respectively.两种主要的方法是通过模块和处理程序,它们分别与 ISAPI 过滤器和扩展非常相似。

The APIs of interests are:感兴趣的 API 是:

You can read more about how to extend the server in the articles below.您可以在下面的文章中阅读有关如何扩展服务器的更多信息。

http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/ http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/

http://learn.iis.net/page.aspx/170/developing-a-module-using-net/ http://learn.iis.net/page.aspx/170/developing-a-module-using-net/

http://msdn.microsoft.com/en-us/magazine/cc164128.aspx#S4 http://msdn.microsoft.com/en-us/magazine/cc164128.aspx#S4

This site talks about .Net extensibility in relation to IronPython: http://www.asp.net/learn/whitepapers/ironpython本站点讨论了与 IronPython 相关的 .Net 可扩展性: http : //www.asp.net/learn/whitepapers/ironpython

You might want to review more info at this site: http://aspnetextensibility.com/您可能希望在此站点上查看更多信息: http : //aspnetextensibility.com/

Assuming your developing asp.net sites in c# or vb.net then you will need the ASP.Net support.假设您在 c# 或 vb.net 中开发 asp.net 站点,那么您将需要 ASP.Net 支持。 To sum up, it's probably one of those things you'll be able to define when you actually need the .Net Extensibility option installed.总而言之,这可能是您在实际需要安装 .Net 扩展性选项时能够定义的事情之一。

However, if you really want to know: .Net Extensibility is an IIS 7 feature which brings the ability to extend IIS 7 via the runtime extensibility model into the core server product.但是,如果您真的想知道:.Net 可扩展性是 IIS 7 的一项功能,它将通过运行时可扩展性模型将 IIS 7 扩展到核心服务器产品中。

Building "regular" sites (whatever those are), don't worry about it.建立“常规”网站(无论是什么),不用担心。 Needing to get down and dirty by modifying the pipeline through modules or handlers?需要通过模块或处理程序修改管道来搞砸和弄脏吗? Install it.安装它。 Either way, you are still going to need the regular ASP.Net support installed.无论哪种方式,您仍然需要安装常规的 ASP.Net 支持。

With regards to what the MS guy said about the Hello World file.. Ignore that, he didn't read the full question...关于 MS 家伙对 Hello World 文件所说的话..忽略这一点,他没有阅读完整的问题......

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM