2012-06-19 2 views
1

안녕하세요, 모두 objectdatasource로 업데이트 기능을 만들고 있습니다. 사실 그것은 UpdateMethod의 매개 변수를 변경하지 않을 때까지 제대로 작동했습니다. 두 개의 매개 변수가 있지만 세 개의 매개 변수가 필요합니다. 나에게 오류가 발생했습니다.Objectdatasource 업데이트 문제

ObjectDataSource 'ODSConfig' could not find a non-generic method 'UpdatePagedDataSet' that has parameters: CONFIG_VALUE, configKey, configValue. 

C# 코드 :

protected void ODSConfig_Updating(object sender, ObjectDataSourceMethodEventArgs e) 
    { 
    TextBox val = (TextBox)GVConfig.Rows[GVConfig.EditIndex].Cells[2].Controls[0]; 
    Parameter objKeyConfig = new Parameter("configKey", DbType.String, GVConfig.Rows[GVConfig.EditIndex].Cells[1].Text); 
    Parameter objKeyValueConfig = new Parameter("configValue", DbType.String, val.Text); 
    e.InputParameters["configKey"] = objKeyConfig.DefaultValue; 
    e.InputParameters["configValue"] = objKeyValueConfig.DefaultValue; 
    } 
+0

귀하의 오류 메시지가 당신이 당신의 업데이트 방법에서 세 개의 매개 변수가 필요하다고 말한다. CONFIG_VALUE 매개 변수가 누락되었습니다. –

+0

@ BogdanRotund : 세 번째 매개 변수를 원하지 않습니다. 비즈니스 로직에서도 두 가지 매개 변수 만 있습니다. – user968441

+0

UpdatePagedDataSet에 몇 개의 매개 변수가 있는지 확인하십시오. –

답변

1

단지 ODSConfig.Update()를 추가 매개 변수를 추가 한 후,

이 코드는 다음과 같이됩니다 후 :

protected void ODSConfig_Updating(object sender, ObjectDataSourceMethodEventArgs e) 
    { 
    TextBox val = (TextBox)GVConfig.Rows[GVConfig.EditIndex].Cells[2].Controls[0]; 
    Parameter objKeyConfig = new Parameter("configKey", DbType.String, GVConfig.Rows[GVConfig.EditIndex].Cells[1].Text); 
    Parameter objKeyValueConfig = new Parameter("configValue", DbType.String, val.Text); 
    e.InputParameters["configKey"] = objKeyConfig.DefaultValue; 
    e.InputParameters["configValue"] = objKeyValueConfig.DefaultValue; 
ODSConfig.Update(); 
    } 

감사