ASP.NET Web应用程序中的多个Web.Config文件

时间:2009-03-25 13:48:50

标签: asp.net web-config

我有一个ASP.NET Web应用程序,我在根文件夹中有多个子目录。在我的根web.config中,我将sessionMode作为“StateServer”。所以在我的子目录的一个页面中,我无法进行序列化。如果我将SessionMode方法更改为“InProc”,它将正常工作。我想在根目录中维护web.config文件,因为它是。所以我打算在子目录中有另一个web.config文件。任何人都可以告诉我该怎么做?

提前致谢

4 个答案:

答案 0 :(得分:6)

虽然您可以在每个子目录中都有一个Web.config,但并不是所有级别都允许所有设置。

SessionMode是一个只能在application-root中创建的设置。

答案 1 :(得分:4)

您可以在子目录中放置一个新的web.config文件,ASP.NET将覆盖您在该目录中更改的所有设置。

答案 2 :(得分:4)

如果使用[Serializable]属性标记要放入Session的类,则通常可以在StateServer设置中使用它。

答案 3 :(得分:0)

只需在子目录中放入另一个web.config即可。 ASP.NET允许这样做,我在我的网站上有几个区域,其中web.config包含专门针对该“应用程序”的值。

那说:

1)你确定以两种不同的方式维持状态是个好主意吗?最好弄清楚如何使会话状态可序列化或完全不使用会话状态。

2)如果你不小心你在每个文件中放置了什么值,那么所有这些web.config文件都很难维护。