Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何关闭特定目录的会话状态?_Asp.net_Session - Fatal编程技术网

Asp.net 如何关闭特定目录的会话状态?

Asp.net 如何关闭特定目录的会话状态?,asp.net,session,Asp.net,Session,我有一个自定义会话提供程序,它将数据存储在数据库中,因此获取会话状态不是一个便宜的操作。在我的web.config中,我还运行了runAllManagedModulesForAllRequests=“true”,因此会话对于图像的每个请求都是专用的 因此,我正在努力为具有静态资源的目录关闭会话状态。不幸的是,为文件夹设置不起作用,因为这是应用程序级选项 我可以在自定义会话提供程序的代码中处理这个问题,但我想知道是否有更干净、更具声明性的解决方案 编辑:似乎没有帮助,因为它可能只与ASP.NET页

我有一个自定义会话提供程序,它将数据存储在数据库中,因此获取会话状态不是一个便宜的操作。在我的
web.config
中,我还运行了
runAllManagedModulesForAllRequests=“true”
,因此会话对于图像的每个请求都是专用的

因此,我正在努力为具有静态资源的目录关闭会话状态。不幸的是,为文件夹设置
不起作用,因为这是应用程序级选项

我可以在自定义会话提供程序的代码中处理这个问题,但我想知道是否有更干净、更具声明性的解决方案


编辑:
似乎没有帮助,因为它可能只与ASP.NET页面和控件相关。

我认为这是不可能的,考虑一下它是为整个应用程序提供会话的,您可以说在这个文件夹中我有,在那个文件夹中我没有,您所能做的就是自定义代码,使您的提供商的昂贵操作不按照特定条件运行,并将其正确地放入您的页面生命周期中。

我认为这是不可能的,请将其视为为为整个应用程序提供了会话,您只需在这个文件夹中说我有,我没有,您所能做的就是自定义代码,使您的提供者的昂贵操作不按照特定条件运行,并将其正确地放入页面生命周期中。

我在尝试使用无Cookie会话执行Web服务时遇到了相同的问题。我用符号链接解决了这个问题。以下是步骤:

1) 在IIS中将子目录设置为自己的应用程序

2) 将其放在子目录web.config中:

    <?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <sessionState mode="Off" />
    </system.web>
</configuration>

就这样。它将从您的主BIN目录加载程序集,并从您的主应用程序继承其所有其他设置。

我在尝试使用无Cookie会话执行Web服务时遇到了相同的问题。我用符号链接解决了这个问题。以下是步骤:

1) 在IIS中将子目录设置为自己的应用程序

2) 将其放在子目录web.config中:

    <?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <sessionState mode="Off" />
    </system.web>
</configuration>
就这样。它将从您的主BIN目录加载程序集,并从您的主应用程序继承其所有其他设置。

Wow,太有创意了!:-)我会尽快尝试的。哇,太有创意了!:-)我会尽快试一试。