3

我正在尝试使用 Channel Factory 并将其缓存在我的 asp.net mvc 中。我正在使用 PerSession Instance 模式,因为我需要知道状态。因此,我无法立即关闭代理。而且我不想每次都重新打开,关闭代理。如果我让代理处于打开状态,它会在第 12 次超时。我可以增加并发会话超时,但我想知道这是否是正确的方法。我是 WCF 的新手,如果我的问题很愚蠢,请原谅。-提前感谢普拉特

4

1 回答 1

1

答案可能是激活表单身份验证元素中的slidingExpiration 属性,尽管默认情况下这是打开的。这样,每次调用后,计时器都会重置为超时值,因此会话在使用时保持活动状态。

请参阅此MSDN 链接:Forms Authentication & slipExpiration property

编辑 - 对评论的回应:

是的,当达到会话超时时,您需要重新进行身份验证才能再次访问服务。您应该将超时值设置为您认为用户不再处于活动状态的不活动时长(以分钟为单位)(默认为 30 分钟),然后如果用户继续调用,则滑动到期将重置此值。我会尝试做一些简单的测试,将超时设置为 1 分钟,并使用不同的场景向自己证明这一点。

于 2010-02-02T16:41:40.480 回答