2012-05-04 16 views
0

セッション状態で日付を格納する必要があります。datetimeをセッションに格納する

私の開発版では、もちろんInProcセッションを使用していますので、セッションの値をdatetime型として保存するだけです。私はアプリケーションをリリースする予定ですが、まずSQLサーバーセッションにアップグレードしてから、最終的にはAzureにアプリケーションをデプロイし、AppFabricを使用してセッション状態を保存します。

私はセッションをそのままにしておくことができますか?ToString()を使用して日付を文字列として保存し、値を取得するための解析を行う必要がありますか?

ありがとうございました。

+0

これは必須ではありません。私は不思議ですが、なぜあなたは文字列としてそれを保存したいですか? – jacqijvv

+0

何らかの理由で、私はInProc以外のセッションモードがkey/valueの方法で働いていると思っていました。 – frenchie

+0

セッションはキーと値のペアに格納されますが、値の型はObjectです。ここでは、ASP.NETセッションのMSDNへのリンクです。http://msdn.microsoft.com/en-us/library/ms178581.aspx – jacqijvv

答えて

4

外部データストアとInProcセッションステートモードのオブジェクトを使用する場合は、すべてのプリミティブな.NETタイプまたはシリアル化可能なタイプをセッションに格納できます。あなたの場合、あなたは文字列に変換する必要はありません、あなたはちょうどDateTimeオブジェクトとしてそれを格納することができます。

1

SqlServerモードの場合、オブジェクトをシリアル化する必要があります。もちろん、DateTimeオブジェクトを使用することもできますが、複合型の場合はserializableという属性が必要です。

[Serializable] 
public class ComplexClass 
{ 
    public DateTime MyDate { get; set; } 
    ... 
} 
+0

シリアル化は自動的に処理されますか? – frenchie

+0

はい。あなたは、クラスを直列化可能としてマークする必要があります。 –

関連する問題