私はデータベースからメニューをバインドします。 SQLクエリでは、私は渡していますASPクラスファイルでセッションを使用するにはどうすればよいですか?
where userid="System.Web.HttpContext.Current.Session["uid"].ToString()"
これは動作していますが、ログインするたびに同じです。
どうすればいいですか?
私はデータベースからメニューをバインドします。 SQLクエリでは、私は渡していますASPクラスファイルでセッションを使用するにはどうすればよいですか?
where userid="System.Web.HttpContext.Current.Session["uid"].ToString()"
これは動作していますが、ログインするたびに同じです。
どうすればいいですか?
どのようにセッションIDを最初に設定していますか?
本当に設定していますか?あなたはラインごとのデバッグを使用してトレースすることができますし、ログイン(ボタン?)をクリックしてから参照してくださいどこで、魔女の値であなたはそのセッションを設定していますか?
コードを使用すると、行が
の線に沿ってC#
string sql = "select a,b,c from XXX where userid=" + System.Web.HttpContext.Current.Session["uid"].ToString();
VB
Dim sql As String = "select a,b,c from XXX where userid=" & System.Web.HttpContext.Current.Session("uid").ToString()
これである必要があり、引用符ですべてを包んしているという点で少しオフに思わ持っスニペットセッションエントリuidがすでに設定されていると仮定しています。
投稿のタイトルを考慮すると、これは別個のクラスですが、クラスのコンストラクタ内の値を渡すか、クラス内からセッションにアクセスするのではなく、インスタンス化されたオブジェクトのプロパティ!これは単体テストなどのWebアプリケーション以外の場所でテストする必要がある場合にコードのテストを改善することができます。
HTH
ワンショット
は一つの可能性のある問題がある:あなたが与えたサンプルコードを見てみると
、あなたは文字列を渡している意味引用符でcurrent.sessionへの呼び出しを持っている
System.Web.HttpContext.Current.Session [ "UID"]。ToStringメソッド()
SQLで何を意味するwhere句です。
current.sessionの呼び出しからの値をsql文字列に追加する必要があります。私は
:)あなたは、両方の古典との間でセッションデータを共有しようとしている場合...鉱山を執筆している間に
しようとは...
where userid='" & System.Web.HttpContext.Current.Session("uid").ToString() & "'"
は**編集**ワンショットは、同じ答えを与えましたASPとASP.Netそれは非常に簡単ではありませんが、実行可能です。
完全な詳細については、次のMSDNページを参照してください:VBでhttp://msdn.microsoft.com/en-us/library/aa479313.aspx
セッション(「UID」);) – balexandre
まあ、私はそのかなりの可能性最初の部分は引用符とセッションコールの内側にあると思います:-) – OneSHOT