none
Cookieの値をViewState変数に代入した際の値の型について RRS feed

  • 質問

  • システムのログインID(アカウント)をCookieに保存しています。

    方法は、

    Response.Cookies("OpeEmpNo").Value = txtEmpNo.text

    のように、テキストボックスの値を読み取り、CookieにWriteしています。

     

    上記の処理で保存した値をもとに、クエリ

    strSQL = "select f_admin from t_user where emp_no='" & ViewState("OpeEmpNo") & "'"
    のように、ユーザテーブルから、ログインアカウントの属性情報を読み出しています。

    しかし、

    ----------------------------------------

    型 'HttpCookie' から型 'String' へのキャストが有効ではありません。
    説明 : 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。

    例外の詳細: System.InvalidCastException: 型 'HttpCookie' から型 'String' へのキャストが有効ではありません。

    ソース エラー:

    ----------------------------------------

    とエラーが表示されます。

     

    型のキャストがうまくいっていないようなメッセージが出されます。

    上記のエラー対処はどのようにすればよいのでしょうか。

    2007年8月23日 0:54

回答

  • すみません、私の勘違い&ケアレスミスでした。

     

    >

     furuyosi さんからの引用

    >システムのログインID(アカウント)をCookieに保存しています。

    >方法は、

     

    >Response.Cookies("OpeEmpNo").Value = txtEmpNo.text

     

    上記は誤りで、

    Response.Cookies("OpeEmpNo").Value = txtEmpNo.text

    ViewState("OpeEmpNo") = Request.Cookies("OpeEmpNo")

    としてました。

     

    ViewState("OpeEmpNo") = Request.Cookies("OpeEmpNo")

    ViewState("OpeEmpNo") = Request.Cookies("OpeEmpNo").value

    として、エラーをパスできました。

    お騒がせしました。

     

    >のように、テキストボックスの値を読み取り、CookieにWriteしています。

    >

    >上記の処理で保存した値をもとに、クエリ

    >strSQL = "select f_admin from t_user where emp_no='" & ViewState("OpeEmpNo") & "'"
    >のように、ユーザテーブルから、ログインアカウントの属性情報を読み出しています。

    >しかし、

    >----------------------------------------

    >型 'HttpCookie' から型 'String' へのキャストが有効ではありません。
    >説明 : 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所>については、スタック トレースを参照してください。

    >例外の詳細: System.InvalidCastException: 型 'HttpCookie' から型 'String' へのキャストが有効ではありません。

    >ソース エラー:

    >----------------------------------------

    >とエラーが表示されます。

    >

    >型のキャストがうまくいっていないようなメッセージが出されます。

    >上記のエラー対処はどのようにすればよいのでしょうか。

    >
    2007年8月23日 1:27