C# WCF关闭连接/释放资源
我最近将我的ASMX服务转换为WCF以利用会话 我已经阅读了一些有关MSDN的会话教程,但仍然不确定我的代码中是否有良好的设置。到目前为止,它是有效的,但我不确定为什么 我得到C# WCF关闭连接/释放资源,c#,asp.net,wcf,service,C#,Asp.net,Wcf,Service,我最近将我的ASMX服务转换为WCF以利用会话 我已经阅读了一些有关MSDN的会话教程,但仍然不确定我的代码中是否有良好的设置。到目前为止,它是有效的,但我不确定为什么 我得到 [ServiceContract (SessionMode = SessionMode.Required, Namespace = "http://smartshopservice.org")] 那我有 [ServiceBehavior(InstanceContextMode = InstanceCo
[ServiceContract
(SessionMode = SessionMode.Required,
Namespace = "http://smartshopservice.org")]
那我有
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)]
public class SmartShopService : SmartShopInterface
{
private static Shopper sh = new Shopper();
private List<aaa> data = new List<aaa>();
它似乎可以工作,我在ASP.NET页面的onbody=“”中调用了如下函数:
static GarfieldService.SmartShopInterfaceClient service
= new GarfieldService.SmartShopInterfaceClient();
[WebMethod]
public static bool Connect() {
try {
if (service.State
== System.ServiceModel.CommunicationState.Closed) {
service.Open();
return true;
}
else if (service.State
== System.ServiceModel.CommunicationState.Created) {
service.Open();
return true;
}
}
catch {}
return false;
}
因此我可以连接,但如何断开或关闭会话?关于:全局,是的,在服务上使用静态将充当全局,并且由于您使用的是PerSession,“aaa”变量将是每个会话 Re:终止,尝试创建“终止”操作并设置属性参数=true 另外,我认为WebGet属性与wsDualHttpBinding无关