我正在尝试处理WCF实例化,而我遇到了会话问题。 我对它的工作原理的假设是不正确的,或者我错过了一些东西。
在我的服务合同(实现而不是接口)上,我已将服务行为的InstanceContextMode设置为PerSession。我在服务中有一个名为“word”的私有字符串,它只是一个空字符串,还有2个方法,1用于将word变量设置为指定值,1用于检索它。
我在MVC应用中添加了服务引用,然后执行以下调用:
第一个调用返回一个空字符串,如我所料。 SetWord正在更新私有变量并按预期重新调整该值。 然而第二次调用GetWord()返回一个空字符串,我原以为它会返回“test”。
如果我将InstanceContextMode更改为“Single”,我会从GetWord的结束调用中得到“test”(正如我所料),但我不明白为什么我不能从PerSession获得相同的结果。
任何人都可以帮我理解我哪里出错吗?