0

現在、私の DomainService は、クライアントが接続するたびにリソースの初期化を実行します。すべてのクライアントは、このリソースの同じインスタンスにアクセスする必要があります。WebService の StartUp でこのリソースを初期化したいと思います。WCF Ria Services でそれを行う機会はありますか?

編集: さて、それについて言及しないでください。これをグローバル DbContext オブジェクトに使用したかったのです。とにかく、DbContext に同時にアクセスする HttpApplication によって管理される複数のスレッドが存在するため、これは良い考えではありません。実装を「スレッドごと」または「HttpContextごと」のアプローチにそれぞれ変更します。とにかくありがとう。

4

1 に答える 1

1

そのリソースの静的プロパティを含むクラスを定義できます。その後、DomainService でそのプロパティにアクセスできます。その後、最初にアクセスしたときにのみ初期化されます。

例:

public class ResManager {
    public static MyObject {...}
}

DomainService で:

public IQueryable<SomeClass> GetSomeObjects()
{
    // you can access it here and it will not be initialized 
    // every time the DomainService is called
    MyObject obj = ResManager.MyObject;
    return new List<SomeClass>().AsQueryable();
}

Globalサービスの開始時に初期化したい場合は、クラスでそれを行うことができるはずです。

于 2011-05-14T17:49:15.783 に答える