在web.config中查找会话状态标记

时间:2014-03-25 04:58:14

标签: c# asp.net regex web-config session-state

我需要编写一个函数,我必须在应用程序的web.config中找到会话状态标记/设置。

我将web.config文件作为参数传递给此函数,函数应检测标记并将其删除,然后返回web.config而不包含会话状态标记。

我可以使用某些功能或正则表达式实现此目的吗?

会话标记格式:

<sessionState mode="StateServer" stateConnectionString="tcpip=CTSINTCOVOCPRD4:42424" />

<sessionState mode="StateServer" stateConnectionString="tcpip=CTSINTCOVOCPRD4:42424"></sessionState>

1 个答案:

答案 0 :(得分:0)

这是提取视图状态的示例,您可以修改它以拉取会话状态。

html = Regex.Replace(html, "<div\\s*class=\"aspNetHidden\"[\\s\\S]*?<\\/div\\>", string.Empty, RegexOptions.IgnoreCase);

这是Session状态的正则表达式:

正则表达式(在regexhere.net上测试)

<sessionState\s*mode=\"StateServer"\s*stateConnectionString=\"tcpip=([^"]+)"\s*\/>

<强>输入

<sessionState mode="StateServer" stateConnectionString="tcpip=CTSINTCOVOCPRD4:42424" />

您可以创建一个函数来读取webconfig,然后使用regex.replace替换状态字符串[未亲自测试]