Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wcf SessionId属性的每个部分是什么意思?_Wcf - Fatal编程技术网

Wcf SessionId属性的每个部分是什么意思?

Wcf SessionId属性的每个部分是什么意思?,wcf,Wcf,我有一个每次调用的服务,在我的客户端代理中,我在方法完成时关闭代理。因此,当我想调用另一个方法时,我会实例化一个新的代理 在第二个调用中,我可以看到sessionId的uuid部分在两个调用中是相同的,但是id部分是不同的 所以如果我试着比较这两个sessionId是不同的 我想知道id部分是否真的很重要,uuid是否相同,是否真的是相同的客户机,尽管id部分不同 非常感谢。如果关闭代理,则无论会话是否受支持,服务将被销毁,会话将终止(如果存在) 如果希望在多个调用中共享同一个sessionId

我有一个每次调用的服务,在我的客户端代理中,我在方法完成时关闭代理。因此,当我想调用另一个方法时,我会实例化一个新的代理

在第二个调用中,我可以看到sessionId的uuid部分在两个调用中是相同的,但是id部分是不同的

所以如果我试着比较这两个sessionId是不同的

我想知道id部分是否真的很重要,uuid是否相同,是否真的是相同的客户机,尽管id部分不同


非常感谢。

如果关闭代理,则无论会话是否受支持,服务将被销毁,会话将终止(如果存在)

如果希望在多个调用中共享同一个sessionId,则需要确保绑定和服务都支持会话(SessionMode.Allowed或SessionMode.Required),并在同一个客户端中执行调用


新客户=新会话

嗯,我的服务需要会话。因此,如果我关闭客户机或实例化一个新的客户机,我将获得一个新会话,因此如果我的合约集正在初始化和注册方法的属性,我将永远无法使用任何正在初始化的方法。因此,唯一的解决方案是在应用程序启动时实例化一个代理,并保持代理和连接的活动状态,直到应用程序关闭为止?无论何时创建服务对象,如果只有会话与服务关联,则创建会话。为了在同一会话中对服务执行某些调用,您需要为同一服务对象调用它们。跟踪OperationContext.Current.SessionId,以确保会话等效。创建代理调用耦合方法,然后关闭代理。所有调用都应该共享相同的SessionId。然后创建代理、调用方法、关闭代理并重复执行这样的场景。每次SessionId都应该是不同的。