交換できるセッション/一時データプロバイダーを構築しようとしています。デフォルトのプロバイダーはasp.netmvc上で機能し、ビジネスオブジェクトクラスから.netmvcTempDataにアクセスする必要がありました。tempdataがコントローラーコンテキストを介して利用できることは知っていますが、それがHttpContextなどを介して公開されているかどうかを確認できないようです。asp.netベースのセッションプロバイダーのみがこれを必要とし、他のプロバイダー(NoSQL DBなどを使用)はコントローラーコンテキストを気にしないため、コントローラーコンテキストを引数として渡したくありません。
さらに明確にするために、ここにもう少しコードを追加します。私のISessionインターフェースは次のようになります。このコードが本番環境に移行すると、セッション/一時データはNoSqlデータベースを使用して機能することが期待されます。しかし、開発テストなどのためにasp.netmvcセッション/tempdataの上で動作する別の実装も必要です。
パブリックインターフェイスISession
{
T GetTempData<T>(string key);
void PutTempData<T>(string key, T value);
T GetSessiondata<T>(string key);
void PutSessiondata<T>(string key, T value);
}