我有一个以编程方式绑定到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”会自动触发?
答案 0 :(得分:0)
使用ObjectDataSource
时,提供UpdateMethod
是不够的。
您的更新方法需要有关要更新的行的参数。 gridview不会自行提供。
您需要实施RowUpdating
以提供更新UpdateParameters
所需的ObjectDataSource