- PR -

VS2005 ObjDataSource(Methodパラメタへの配列指定)

1
投稿者投稿内容
ベル
会議室デビュー日: 2002/12/01
投稿数: 18
投稿日時: 2006-05-22 18:44
VS2005(ASP.NET C#)

お世話になります。
現在、GridView + ObjDataSourceの組み合わせで
SelectMethodやUpdateMethodのパラメタ(SelectParameters,UpdateParameters)に、
配列を指定したいと考えているのですが、どのようにすればよいのか悩んでいます。

ご存知の方がいらっしゃいましたら、ご教授いただけると幸いです。

//=======================
//Customers.cs
//=======================
public class Customers
{
  public void UpdateData(string[] strSQL)
  {
   //更新処理
  }
}

//=======================
//GridView.aspx.cs
//=======================
string[] strSQL = new string[2];
strSQL[0] = Update文1
strSQL[1] = Update文2

//Customersクラスのメッソドを使用します。
ObjDataSource1.TypeName = "Customers";
ObjDataSource1.UpdateMethod = "UpdateData";

//パラメタ設定
objDs.UpdateParameters.Add("strSQL", System.TypeCode.String, strSQL);
  <==このような感じでUpdateDataメソッドにパラメタ(配列:strSQL)を設定したいのですが。。。

dotnetmemo
常連さん
会議室デビュー日: 2006/04/29
投稿数: 24
投稿日時: 2006-05-22 21:45
ObjDataSourceのSelectingやUpdatingイベントをハンドリングしてパラメータを書き換える方法ではダメですか?

protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
e.InputParameters["arr"] = new int[] { 1, 2, 3 };
}
ベル
会議室デビュー日: 2002/12/01
投稿数: 18
投稿日時: 2006-05-23 01:07
dotnetmemoさん。
ありがとうございました。

string[] strSQL = new string[2];
strSQL[0] = Update文1
strSQL[1] = Update文2

e.InputParameters["strSQL"] = strSQL で"UpdateData"メソッドを起動することが出来ました。
ただ、なぜ可能かまでは、理解に至っていないので、InputParametersについて勉強致します。

本当にありがとうございました。
1

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