dポイントプレゼントキャンペーン実施中!

Sessionの事をいまいち良く分かってないのですが、

Dim Keys(3,9) As String
→Keysの各要素に値を代入

Session("aa")=Keys
→ここまではエラーは出力されません。

次にSessionを受け取る画面で、
Dim Key2(3,9) As String = Session("aa")
とすると、
「Option Strict OnでSystem.ObjectからStringの二次元配列への暗黙的な変換はできません」
というエラーが出てしまいます。

そもそもSessionに格納するところから間違えているのでしょうか?

よろしくお願い致します。

A 回答 (3件)

Dim Key2(,) As String = DirectCast(Session("aa"), String(,))



で、できませんでしょうか?
お試しください。
    • good
    • 0

ASP.NETですね。


環境がないので推測です。

> Dim Key2(3,9) As String = Session("aa")


Dim Key2() As String = Session("aa")
にしたらどうですか?
    • good
    • 0

こんちは。



。。。ホントにエラー出てませんか?(汗

>>Dim Keys(3,9) As String
そもそも、型宣言が無いはず。

Dim Keys(3,9)

>>Dim Key2(3,9) As String = Session("aa")
そもそも、宣言と同時に初期化は出来ないはず。

Dim Key2(3,9)
Key2(0,0) = Session("aa")(0,0)


ちなみに
>>Session("aa")=Keys
は問題ないようです。
Session変数にも、そのまま配列の格納は問題なくできるかと思います。

使い方としては。。。上でも書きましたけど

Session("aa")(0,0)
となります。

Session("aa")(0,0)とKeys(0,0)が対応~です。



まぁ。。。これが、「ASP.net」です。とか言われたら。。。
自分やってないので違うかもしれませんけどね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!