2

ASP/VB.NET アプリケーションでセッション変数が失われるという問題があります。

このアプリケーションでは、アイテムを検索したり、固有のリンク (ブラウザーで) が提供されている場合はアイテムを表示したりできます。アイテムに関する情報をセッション変数に保持します。

アイテムを表示している Web ページで、ユーザーはボタンをクリックして、セッション変数から取得したアイテムに関する追加情報を含むウィンドウを開くことができます。

検索エンジンを使用してアイテムを検索し、ボタンをクリックすると、問題なく動作します。

リンクをブラウザーにコピーすると、アイテムは表示されますが、ボタンをクリックすると「null 例外」が返されます。アイテムに関する情報を含むセッション変数が失われます。さらに、ボタンが機能する2回目のリンクを提供すると、変数がそこにあります!!!

なぜこれが起こっているのか誰にも分かりますか?

4

1 に答える 1

1

Sounds like an edge case where the Session("your_variable") isn't being initilized correctly based on the link information.

Things to investigate:

Is the page being served off the cache when you provide the link initially? ASP.NET will cache content and not execute the server-side code because the page isn't being created again on the request. If you have code that initilizes some state when the page is loaded that is later referred to when the button is clicked, that indeed could be your problem.

于 2009-12-23T15:01:30.110 に答える