-1

2 つのマスターページがあります。最初のマスター ページには、セッション ["ユーザー名"] を開く login.aspx ページがあります。2番目のマスターページには、それにリンクされた子マスターページがあります。子マスターページには、親マスターページのコンテンツプレースホルダー内にコンテンツプレースホルダーがあります。子マスターページの contentplaceholder 内を除くすべての場所にセッション値をラベルに割り当てることができます。エラーはありませんが、実行時にラベルが空白で表示されます。session["username"] 値をラベルに割り当てたいです。

Label1.text=(string)session["username"] doesnt work.

どんな助けでも大歓迎です。

4

2 に答える 2

1

子マスターページの contentplaceholder 内を除くすべての場所にセッション値をラベルに割り当てることができます。

わかりました、ご存知のように、session変数は Web アプリケーション全体でその値を保持します。したがって、セッションがさまざまなページで正常に機能しているということは、ラベルに の値が表示されていることを意味しますsession["username"]。そうであれば、variable(Label1.Text)値を割り当てる必要があります。

これは正しいラベルですか?
あなたのラベルは見えていますか?

于 2012-12-29T14:08:51.057 に答える
0
Label1.Text= Session["username"] == null ? "Guest." : (string)Session["username"];

このコードを使用すると、空白のラベルが表示されなくなり、ユーザー名 (存在する場合) または "Guest" を表示することが決定されます。Session["username"]空白の 場合。

セッションが満たされていない場合は、(セッションに値があるという) 仮定が間違っていることを意味し、セッションが値を取得するコードをよく見て、そこで何が問題なのかを確認する必要があります。

于 2012-12-29T12:36:11.797 に答える