【发布时间】:2011-04-19 10:55:00
【问题描述】:
我们正在尝试找到一种在运行时更改 sessionState 的 sqlConnectionString(在 SQLServer 模式下)的方法。我们正在为我们的 SQL 服务器实现故障转移,我们希望在 sessionState 无法访问我的 SQL 服务器时捕获并告诉它故障转移到我的辅助服务器并同时初始化站点范围的故障转移。
如果我不清楚,请随时向我询问更多详细信息。 (顺便说一句,我们使用的是 C#)
编辑:可以肯定的是,我说的是 sessionState 而不是常规的 sql server 连接,请参阅http://msdn.microsoft.com/en-us/library/h6bb9cz9(vs.71).aspx。
我当前的 web.config 是这样构建的:
<configuration>
[...]
<system.web>
[...]
<sessionState mode="SQLServer" timeout="525600" sqlConnectionString="Data Source=localhost\SQLEXPRESS;User ID=myUser;password=myPassword" cookieless="false"/>
</system.web>
[...]
</configuration>
希望这会有所帮助。
【问题讨论】:
-
解决方案是使用 PartitionResolver : System.Web.IPartitionResolver 和公共方法 public string ResolvePartition(object key),它将返回适当的连接字符串。
标签: c# .net sql-server session-state failover