목록에 존재하지 않기 때문에 여기에 시나리오의 유효하지 않은 SelectedValue 있습니다. 시간의 한 지점에서 값을했다 :DropDownList로는 항목
한 두 네 다섯
: 어떤 점 이상에서한 두 세 네
, 사용할 수있는 값 목록으로 변경
그러나 드롭 다운의 값을 저장하는 DB의 필드에는 여전히 일부 행에 "3"값이 포함되어 있습니다. 그 행 중 하나를로드하고 같은 SelectedValue를 설정하는 경우 : 'DD'이란 항목 목록에 존재하지 않기 때문에 유효하지 않습니다 SelectedValue 있습니다
dd.SelectedValue = data.Field; // where data.Field == "Three"
을 ... 오류가 나타 발생합니다.
데이터 정리는 여기에 옵션이 아닙니다. 저장된 값은 이미 생성 된 데이터에 대한 유효하지 않은 선택이 아니지만 새로 생성 된 데이터에 대한 유효하지 않은 선택이므로 고객에게 문제가 발생할 수 있습니다.
어떻게 다른 사람이 상황을 처리했다?
감사합니다. 나는이 솔루션이 지금까지 최고라고 생각한다. 다른 많은 답변은이 비즈니스 규칙을 DB (필자가 싫어하는)로 이동 시키거나 현재 값을 표시하지 않고이 상황에서 허용 할 수없는 것이 좋습니다. 이 특정 상황에서는 값이 이전에 생성 된 데이터에 유효하기 때문에 재 저장을 허용합니다. 새 데이터 만이 값을 가져서는 안됩니다. 유효하지 않은 값이 이전 데이터에서만 동적으로 추가된다는 사실은 문제를 충분히 해결합니다. –