검증 사용자 지정 웹 속성을 설정하여 사용자 지정 toolpart?
문제
나는 사용자 지정 웹 파트를 사용자 지정 toolpart 편집하는 사용자 정의 속성입니다.
는지 궁금하네요 난 어디 valide 의 값이 있습니다.
내가 볼 수있는 두 가지 장소가 유효성을 검사합니다.
에서 하나 재산 그 자체:
private int? m_MaxNumberOfSomething;
[Browsable(false)]
[Category(Constants.WebPartsExtendedPropertiesCategoryName)]
[DefaultValue(5)]
[WebPartStorage(Storage.Personal)]
public int? MaxNumberOfSomething
{
get
{
return m_MaxNumberOfSomething;
}
set
{
if (value.HasValue && value < 1) throw new WebPartPageUserException("At least one !");
m_MaxNumberOfSomething = value;
}
}
에서 또는 적용의 변경 toolpart 방법:
public override void ApplyChanges()
{
int maxNumberOfSomething;
if (!int.TryParse(txtMaxNumberOfSomething.Text, out maxNumberOfSomething))
{
throw new WebPartPageUserException("At least one");
}
ParentWebPart.MaxNumberOfSomething = maxNumberOfSomething;
}
가 3 번째 방법은?
무엇이 올바른 위치를 추가 이러한 검증?
해결책
나는 그것을 할 것에 set
ter.
당신이 던지는 예외 어쨌든 그것은 청소하지 않는 사용자 set
값에서 첫 번째 장소입니다.당신이 할 것만 유효성 검사에 이 ApplyChanges
방법,다른 코드를 수 있는 일은 이미 잘못 설정된 값입니다.
검증 set
, 므로 사용자는지 쓰게 잘못된 물건을 변수입니다. 여기에서 블로그 포스트를 보여주는 정확하게 하는 방법, 지만,당신은 그것을 정확하게 하거든요.
제휴하지 않습니다 sharepoint.stackexchange