- - PR -
VWDで、QueryStringParameterで動的にDBに接続する方法。
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-02-22 00:10
初めて投稿します。
皆様よろしくお願いいたします。 <asp:QueryStringParameter Name="DB" QueryStringField="id" Type="String" /> などという形ではなく、Page_Initの際などにVBなどで動的にDataBaseに接続したいと思っています。 例えば、GridView.aspxのGridViewの各列にリンクを貼り、そのリンク先を DetailsView.aspx?id={0} とします。 そこでDetailsView.aspx のinit時にこのデータを表示するとともにこのデータの他の情報も取得したいと思っています。 Dim setting As ConnectionStringSettings = ConfigurationManager.ConnectionStrings("ConnectionString") Dim factory As DbProviderFactory = DbProviderFactories.GetFactory(setting.ProviderName) Using db As DbConnection = factory.CreateConnection db.ConnectionString = setting.ConnectionString Dim comm As DbCommand = factory.CreateCommand comm.CommandText = "SELECT sample FROM sa1,sa2 WHERE id=@id" comm.Connection = db Dim para As DbParameter = factory.CreateParameter … としようとしたのですが、パラメータをどう生成したらよいかがわかりません。 どなたかご意見やアドバイス、ご指摘等いただけたら幸いです。 [ メッセージ編集済み 編集者: hoshino 編集日時 2007-02-22 00:13 ] |
|
投稿日時: 2007-02-22 01:16
私が質問の意図ちゃんと把握してるかわかりませんが、
Dim para As DbParameter = comm.CreateParameter ということですかね。 |
|
投稿日時: 2007-02-22 01:47
お返事ありがとうございます。
GridView.aspxのリンクにバインドされた値(上でいう{0})を、 DetailsView.aspxにデータがバインドされる前に取得し、それを para.Value として データをDBから抽出したいという意味なのですが、 わかりずらくてすいません。 例えばSession なら Dim context As HttpContext = HttpContext.Current Dim session As HttpSessionState = context.Session para.Value = session.Keys(0) comm.Parameters.Add(para) のように、{0}の値でDBに検索をかけたいのですが、 {0}の値を取得する方法はないのでしょうか? |
|
投稿日時: 2007-02-22 02:14
getパラメータの取得の仕方でしたか。
para.Value = Request.QueryString("id") ということでしょうか。 |
|
投稿日時: 2007-02-22 02:20
お返事ありがとうございます。
今試してみましたが、無事取得できました。 ありがとうございます。 とても感謝しております。 機会があればまたご指導いただければ幸いです。 ありがとうございました。 |
1