
お世話になります。
ASP.net(C#)で単純なシステムをつくっているのですが、
プログラムでサーバー上のフォルダを削除すると、どうもSession情報が消されてしまうようです。
調べたところ、Web.configで↓
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" stateNetworkTimeout="10" />
を追加すればよいと書いてあったので、追加すると、
「セッション状態をシリアル化できません。'StateServer' および 'SQLServer' モードでは、ASP.NET はセッション状態オブジェクトをシリアル化します。その結果、シリアル化できないオブジェクトまたは MarshalByRef オブジェクトは許可されません。'Custom' モードのカスタム セッション状態ストアによって類似したシリアル化が実行される場合、同一の制限が適用されます。
」
↑のエラーメッセージが出るようになってしまいました(><;)!
一体どのように回避すればよいのでしょうか・・・?
どなたかご教授下さい。
No.1ベストアンサー
- 回答日時:
>プログラムでサーバー上のフォルダを削除すると、どうもSession情報が消されてしまうようです。
WebApplication 仮想フォルダ配下のフォルダを消してしまうということでしょうか。そもそもの作りがよろしくないように思います。一般的には、WebApplication の仮想フォルダ外の別の場所を処理対象とするべきです。
---
>「セッション状態をシリアル化できません...
Session 変数に、シリアライズできないオブジェクトを入れている場合に発生します。対処方法としてはそういうオブジェクトを Session 変数に入れないようにします。
例えば DataSet, DataTable はシリアライズ可能ですが、DataView はシリアライズ不可です。
edp3142さん。
お返事遅れて大変申し訳ございませんでした。
>WebApplication 仮想フォルダ配下のフォルダを消してしまうということでしょうか。そもそもの作りがよろしくないように思います。一般的には、WebApplication の仮想フォルダ外の別の場所を処理対象とするべきです。
説明が足りず申し訳ありません。
上記で削除しているフォルダは仮想フォルダとは全く別のフォルダです。
>Session 変数に、シリアライズできないオブジェクトを入れている場合に発生します。対処方法としてはそういうオブジェクトを Session 変数に入れないようにします。
おっしゃるとおりのようで、Sessionに入れる情報は独自クラスで生成したDataSetでした。
プログラムを変更することで回避できました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで重複した値のセルに色付けをしたい 1 2022/11/02 16:12
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- PHP PHPのセッション有効期限について 5 2023/06/14 12:40
- その他(料理・グルメ) シリアルのちょい足しは? 私はシリアルが好きなのでよく食べています。でもグラノーラとかはあまり好きで 3 2022/07/21 13:40
- PHP 「ログイン機能を持たせる」説明が気難しいです。 2 2022/10/11 02:59
- 教育ソフト・学習ソフト マイクロソフトのシリアル番号と自分のアカウント解除 2 2023/07/19 08:27
- PHP ここで言うトークンの意味を教えてください。 3 2022/08/24 03:03
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- その他(悩み相談・人生相談) 学生です。 一緒に遊びに行った時に友達の分も一緒に払って500円 私のシリアルを後で買って返すからと 3 2023/08/08 12:14
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 同じ名前のオブジェクトを...
-
Rangeオブジェクトを一時的に作...
-
Excelで =EMBED("Acrobat Docu...
-
オブジェクト指向の「指向」は...
-
AccessからMSペイントを起動さ...
-
EXCEL VBAにて動的にCheckBOXを...
-
パワーポイントのVBAでテキスト...
-
Webアプリケーションのエラーメ...
-
ワイルドカード<?>と型パラメー...
-
多人数のじゃんけんプログラム
-
CFileDialogでフォルダだけを選...
-
error C2712: オブジェクト ア...
-
CoCreateInstanceでエラーになる。
-
LabelValueBeanで作成したリス...
-
COMコンポーネントって何?
-
戻り値がクラスオブジェクト
-
VB6-オブジェクトを配列にセット
-
ArrayLsitのデータ取得
-
VBScriptで計算して出た値をク...
-
ASP.net 教えてください!!(...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで =EMBED("Acrobat Docu...
-
パワーポイントのVBAでテキスト...
-
EXCEL VBAにて動的にCheckBOXを...
-
VBA 同じ名前のオブジェクトを...
-
C#でフォームのオブジェクト名...
-
VBAのWindowオブジェクトとWork...
-
ビジュアルC++でボタンの有...
-
COMコンポーネントって何?
-
CoCreateInstanceでエラーになる。
-
ワイルドカード<?>と型パラメー...
-
戻り値がクラスオブジェクト
-
error C2712: オブジェクト ア...
-
Vbで通常使用するプリンターを...
-
質問すいません。 javascriptの...
-
Object型からDouble型へのキャスト
-
Accessの連結・非連結オブジェ...
-
オブジェクトレベルとメタレベル
-
C++でのクラスオブジェクトの破棄
-
時間帯判定をする。
-
VBAでvlookup関数から、別シー...
おすすめ情報