- PR -

ASP⇔ASPX(C#.NET)のデータの受け渡しについて

1
投稿者投稿内容
riko
会議室デビュー日: 2007/01/24
投稿数: 2
投稿日時: 2007-01-24 19:12
はじめて投稿します。

ASPとASPX(C#.NET)で、データの受け渡しがしたいのですが
Sessionで情報を取得することは出来ないでしょうか。

過去記事を拝見して駄目だとあったのですが
ASP→ASPX(C#.NET)
ASPX(C#.NET)→ASP
のどちらかでも
値を取得する方法はありませんでしょうか。

Cookiesでの受け渡しをしたくなく、他の方法を探しています。
何かいい取得方法がありましたら教えて頂けないでしょうか。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2007-01-24 19:21
ASPとASP.NETはまったく別の仕組みで動いてますので、データをSessionで渡すことは
できません。
データベースに必要なデータを登録しておき、そのキーとなる値をクエリ文字列等で
渡す、といった仕掛けが必要かと思います。
KIMERA
大ベテラン
会議室デビュー日: 2003/02/28
投稿数: 112
お住まい・勤務地: 兵庫県・大阪府
投稿日時: 2007-01-24 19:23
Session云々に関してはあまり知らないのですが、単純にクエリーを使うとかではダメですか?
間接的にやり取りする方法であればいくつかありそうですが・・・。
(フラットファイル経由したりとか)
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2007-01-24 19:29
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnaspp/htm/converttoaspnet.asp

まあぶっちゃけこんなことでもしないと実現できないということです。
素直にDBなど経由でシンプルに受け渡すのが無難かと。
riko
会議室デビュー日: 2007/01/24
投稿数: 2
投稿日時: 2007-01-26 15:43
ご回答ありがとうございます。
どうやっても値を渡すことは不可能そうですね。

DBへの保存の場合、ログインして私の情報というのを取得してこないといけない為
出来れば避けたいと思っていました。

例えとして、ある作業をASP、途中からはASPXでのシステムの場合
ASPで、問@までしたけど、ASPXで、問@の続きの問Aからするというのは
再度ログインしてするしかなく、問@を探してからでないと問Aを見つけることが出来ず
問@までしたという情報、ログインの仲介なく渡すには、Cookiesでするしかなさそうですね。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-01-27 06:45
引用:

rikoさんの書き込み (2007-01-26 15:43) より:
ご回答ありがとうございます。
どうやっても値を渡すことは不可能そうですね。


Classic ASPとASP.NET間でSession情報を共有することは可能です。

Session情報は、
<input type="hidden">に保存して
Classic ASPとASP.NET間でSeesion情報を共有します。


■Session情報を渡す(Classic ASP側)
コード:

Session("Userid") = 9999
Session("UserName") = "TaroYamada"
Response.Write("<form name=trans id=trans action=Asp2Aspx.aspx method=post>")
For Each Item in Session.Contents
Response.Write("<input type=""hidden"" name=""" & Item)
Response.Write( """ value=""" & Session(item) & """ >")
Next
Response.Write("</form>")
Response.Write("<scr" & "ipt>trans.submit();</scr" & "ipt>")



上記のコードでは、こんな感じのHTMLタグを自動生成します。

コード:

<form name="trans" id="trans" action="Asp2Aspx.aspx" method="post">
<input type="hidden" name="変数名1" value="値1">
<input type="hidden" name="変数名2" value="値2">
<input type="hidden" name="変数名3" value="値3">
</form>
<script>trans.submit();</script>




■Session情報を受け取る(ASP.NET側)

コード:

Sub Page_Load()
Dim i As Integer
For i=0 to Request.Form.Count -1
Session(Request.Form.GetKey(i)) = Request.Form(i).ToString()
Next
End Sub



_________________
ASP.NET+Ajaxサンプル集

[ メッセージ編集済み 編集者: Access 編集日時 2007-01-27 06:49 ]
1

スキルアップ/キャリアアップ(JOB@IT)