ストアドプロシージャの戻り値取得方法(.Net2.0 SqlDataSource)
(07/17 07. ASP.NET関連(Monoも))
Visual Studio 2005 で SqlDataSource を使ってストアドプロシージャを実行したときに戻り値がある場合の取得方法を調べたメモ。
InsertQueryにストアドプロシージャを設定して普通に Output用パラメータを画面上の項目とかにバインドしても全然反映しないのでいろいろと調べてみた結果、
Insertedイベントのパラメータで渡される SqlDataSourceStatusEventArgs e で取得できるらしいということが判った。
と言うことで、実験した。

- - - - - - - - -
実験用のストアドプロシージャ:PROC_TEST
Procedure text:
==================================================
DECLARE VARIABLE strInnerTXT VARCHAR(20);
BEGIN
RES_STR = CUST_NM || ':' || CUST_NM_KN;
END
==================================================
Parameters:
CUST_NM INPUT VARCHAR(40)
CUST_NM_KN INPUT VARCHAR(60)
RES_STR OUTPUT VARCHAR(20)
- - - - - - - - -

Inserted イベント用のメソッドで止まるようにブレイクポイント指定して、変数 e の内容を調べた結果
イミディエイトウィンドウにて
? e.Command.Parameters[@RES_STR]
とかやると、結果は...
{@RES_STR}
[FirebirdSql.Data.FirebirdClient.FbParameter]: {@RES_STR}
base {System.MarshalByRefObject}: {@RES_STR}
D>
前[P.1/2]

[コメント]

[コメント追加]

このアイテムは閉鎖されました。このアイテムへのコメントの追加、投票はできません。

[トラバ]

トラバ
トラバピングURL
http://weblog.hip-labo.com/action.php?action=plugin&name=TrackBack&tb_id=142
手動によるトラバは こちらからどうぞ。
前:VS2005+SDK で FirebirdClient-2.1.0 + DDEX
次:いい加減にバージョンあげないと

Mob-HOME | PC-HOME