1
私はWCFサービスにデータを格納する必要があるプロジェクトに取り組んでいますが、データが操作されたときにどのように変更を維持できるかはわかりません。だから今、クライアントは、私がコレクションcl
の更新値を送信することができますどのようにこのサービスを利用する際WCF Service StoreおよびManipulate Collection?
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Single, InstanceContextMode =
InstanceContextMode.Single,UseSynchronizationContext = true)]
public class TestService : ITestService {
private List<TestClass> cl;
public TestService()
{
cl = new List<TestClass>();
TestClass tc = new TestClass(5);
cl.add(tc);
}
public void Diminish(int x)
{
cl[0].Value -= x;
}
public TestClass ReturnValue(int p)
{
return cl[p];
}
}
?
Iをプライベート静的SynchronizedCollectionを使用しようとしました cl;しかし、私が戻り値(0)を実行した後、私はまだ5を得て4ではありません。 –
@JohnDoe、あなたは2つの呼び出しの間にサービスを再起動しましたか?なぜなら、WCFサービスを再コンパイルして実行するたびに、リストをメモリに格納しているので、その値が再初期化されるからです。永続的な方法でこのリストを永続化したい場合は、サーバーのメモリ内に残す代わりに、ファイルまたはデータベースに格納することを検討することもできます。 –
サービスが稼働していますが、私は2つのインスタンスvs2010を実行しています。 –