0

次のように、プログラムで ObjectDataSource にバインドする GridView があります。

ObjectDataSource risks = new ObjectDataSource("Risks", "RetrieveProjectRisk");
risks.TypeName = "Promanto.ProjectRisks";
risks.DataObjectTypeName = "Promanto.ProjectRisk";
risks.SelectMethod = "RetrieveProjectRisk";
risks.DeleteMethod = "DeleteProjectRisk";
risks.InsertMethod = "AddProjectRisk";
risks.UpdateMethod = "UpdateProjectRisk";
risks.SelectParameters.Add("WhereClause", TypeCode.String, "ProjectID  ='PR0002'");
RisksGrid.DataSource = risks;
RisksGrid.DataBind();

しかし、編集ボタンをクリックしてから値を更新すると、最初に RowUpdating が存在する必要があるというエラーが表示されます。追加するときは、何を入れたらいいのかわからない。私の UpdateMethod "UpdateProjectRisk" は自動的に起動するはずではありませんか?

4

1 に答える 1

0

を使用する場合ObjectDataSource、 を提供するUpdateMethodだけでは不十分です。

update メソッドには、更新する行に関するパラメーターが必要です。グリッドビューはこれを単独では提供しません。

を実装して、更新に必要な をRowUpdating提供する必要があります。UpdateParametersObjectDataSource

このObjectDataSource の例を見てください

于 2012-08-01T09:57:23.553 に答える