2012-02-15 2 views
0

Я знаю, что HTTP 1.1 может закрыть соединение, используя заголовок «Соединение: закрыть» в базовом программировании сокетов. Возможно ли создать постоянное http-соединение или сеанс с использованием службы WCF? Например:WCF Service Http Постоянное соединение/сеанс

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace TestServiceInstance 
{ 
    class ServiceTest :IServiceTest 
    { 
     private int i = 0; 
     public ServiceTest() 
     { 
      ++i; 
     } 
     public int PrintNumber() 
     { 
      return i; 
     } 
    } 
} 

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using ServiceTestImplementation.ServiceRef; 

namespace ServiceTestImplementation 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 

      ServiceTestClient client = new ServiceTestClient(); 


      for (int i = 0; i < 10; i++) 
      { 
       Console.WriteLine(client.PrintNumber()); 
      } 

      Console.Read(); 
     } 
    } 
} 

Он всегда печати 1 - но я хотел бы, если экземпляр службы может вспомнить свое значение ... Спасибо!

ответ

0

Да, WCF позволяет сохранять сеансы между клиентскими вызовами.

Вы можете использовать сеансы WCF для этого.

http://msdn.microsoft.com/en-us/library/ms733040.aspx

+0

Честно говоря, я не понимаю, большинство инструкций. Очевидно, SessionMode = SessionMode.Required недостаточно –

+0

Я думаю, что это работает спасибо - я только увеличил его значение в конструкторе. Возможно, он работал все время. –