我们正在使用AppFabric 1.1& IIS 8.0运行基于xamlx的工作流程。为了使静态xamlx文件消失,我们使用Ron Jacobs完美的示例代码将它们存储在数据库中,并通过VirtualPathProvider
提供xamlx内容。
到目前为止,如果有人点击了正确的uri,就会提供xamlx文件。
但是现在AppFabric Dashboard没有机会收集和登记xamlx文件作为服务,因为它们不再对AppFabric可见。
目标必须是伪造目录列表并从db读取所有xamlx工作流名称。
我尝试通过以这种方式覆盖基于目录的方法来扩展VirtualPathProvider
public override bool DirectoryExists(string virtualDir)
{
return base.DirectoryExists(virtualDir);
}
public override VirtualDirectory GetDirectory(string virtualDir)
{
if (IsPathVirtual(virtualDir))
{
return new VirtualDirectoryDecorator(base.GetDirectory(virtualDir));
}
else
{
return Previous.GetDirectory(virtualDir);
}
}
但这些方法并没有像我猜测的那样被调用。这是因为Uri没有扩展名,asp.net也没有被调用。
任何有助于使这个假目录列表发生的帮助!
由于
答案 0 :(得分:1)
您需要修改web.config
文件以指示IIS必须为每个请求调用ASP.NET,这是通过应用程序根目录中的<modules runAllManagedModulesForAllRequests="true" />
属性完成的。
我认为您应该重命名您的问题,因为乍一看我认为您在内部使用VirtualPathProvider并希望隐藏IIS自动生成的目录内容列表页面。