私はサービスを持っており、この依存関係をasp.net mvc5フレームワークのautofacで登録しました。静的データ型のメモリ割り当て
public partial class EBayApiService : IEBayApiService
{
#region Fields
private readonly GlobalSettingsForEBay _globalSetting;
private static ApiContext _context;
#endregion
#region Ctor
public EBayApiService(GlobalSettingsForEBay globalSetting)
{
this._globalSetting = globalSetting;
_context = GetApiContext();
}
static ApiContext GetApiContext()
{
//apiContext is a singleton,
//to avoid duplicate configuration reading
if (_context != null)
{
return _context;
}
else
{
_context = new ApiContext();
return _context;
}
public CategoryTypeCollection GetAllEBayParentCategories(ApiContext context)
{
//here I play with _context.
}
}
ブラウザからの初めてのリクエスト_contextはnullであり、データを収集します。その後、リクエストごとにnullではありません。
私の質問は、もう一度nullになるときです。または、データはライフサイクル全体で1回だけ使用されます。
ページが読み込まれたときに初めてnullになります。その後、すべてのページの読み込みでnullではありません。 –
はい、ヌル状態の中のprint文で確認して、ボタンや何かで何度もリロードページを試してみることができます –