如何扩展ASPNET_ISAPI过滤器?
问题描述:
有什么办法可以扩展标准的aspnet_isapi过滤器吗?如何扩展ASPNET_ISAPI过滤器?
我想覆盖负责创建应用程序域和宿主环境的应用程序管理逻辑 - 这是ApplicationManager类的责任。我想扩展它的原因是为我的Web应用程序实现多租户支持,其中多个租户可以在同一个应用程序中运行。由于不同的租户应该能够加载相同程序集的不同版本,因此需要将它们分离到不同的应用程序域中。因此,需要为每个租户创建新的应用程序域。
任何想法?
答
有没有这样的运气?我也有类似的问题。 作为调查的结果 - 我不认为这是一个很好(甚至可能)的方法来编写自己的ApplicationManager。 ApplicationManager处理低级别的请求处理逻辑,而多租户则更高,更接近应用程序逻辑(业务逻辑)。 看看如何创建子AppDomains方法。这可能是正确的。
我很难理解你在做什么。你想编写一个IIS过滤器,扩展ApplicationManager类,还是只在GAC中使用并行程序集(或每个Web应用程序的本地程序?) – Tom
我想扩展标准的aspnet_isapi过滤器。由于ApplicationManager的实现位于那里,所以这个扩展可能在这个特定的类中。你知道我现在的意思吗? – untoldex
“我想扩展标准的aspnet_isapi过滤器” - 这对我没有意义,我想你的意思是你想写一个.net的web应用程序?你有没有已经实现的东西,还是你只有一台IIS服务器? ApplicationManager位于.net主机名称空间中,该名称空间与您可能希望执行的IIS管理任务IIRC不完全对齐。 – Tom