내가 내 추가 내 자신의 지정 유효성 검사 속성이 ASP.NET MVC 3를 사용하고 있습니다 : 그것은 IClientValidatable
을 구현하는 방법을ASP.NET MVC 3 IClientValidatable 특성 - 지우기 매개 변수 캐시
public class CustomAttribute : ValidationAttribute, IClientValidatable {
private readonly string _parameter1;
public CustomAttribute(string parameter1) {
_parameter1 = Global.Settings[parameter1];
}
protected override ValidationResult IsValid(object value, ValidationContext context) {
...
}
public IEnumerable<ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context) {
yield return new ModelClientValidationRule() {
ErrorMessage = FormatErrorMessage(metadata.DisplayName),
ValidationType = "custom",
ValidationParameters = { { "parameter1", _parameter1 } }
};
}
}
공지 사항. 그러면 parameters1
설정이 HTML 5 데이터 속성으로 페이지의 필드에 렌더링됩니다.
내가 가진 문제는 설정 값을 변경할 수 있지만 변경 될 때마다 여전히 데이터 속성 내에 이전 값을 렌더링합니다. 나는 이것이 어딘가에 캐시되어 있다고 생각한다. 어쨌든 캐시를 제거 할 수 있습니까?
도움을 주시면 감사하겠습니다. 감사합니다
응용 프로그램/풀을 다시 시작하지 않고이를 수행 할 수있는 방법이 있습니까? 프로덕션 환경에서는 그렇지 않습니다. 그렇지 않으면 모든 활성 세션이 손실되어 최소한으로 말합니다. – mrd3650
볼 수있는 한 멀쩡합니다. 나는이 질문을 게시 한 이후로 보지 않았다. 그래서 누군가가 더 좋은 방법을 생각해 냈을 것이다. – nfplee