private static TypeSchemaKey CreateKey(Required valueRequired, JsonProperty memberProperty, JsonContract contract) { int? minLength = DataAnnotationHelpers.GetMinLength(memberProperty); int? maxLength = DataAnnotationHelpers.GetMaxLength(memberProperty); TypeSchemaKey key = new TypeSchemaKey(contract.UnderlyingType, valueRequired, minLength, maxLength); return key; }
private static TypeSchemaKey CreateKey(Required valueRequired, JsonProperty memberProperty, JsonContract contract) { int? minLength = DataAnnotationHelpers.GetMinLength(memberProperty); int? maxLength = DataAnnotationHelpers.GetMaxLength(memberProperty); Required resolvedRequired; switch (valueRequired) { case Required.Default: case Required.AllowNull: resolvedRequired = Required.AllowNull; break; case Required.Always: case Required.DisallowNull: resolvedRequired = Required.DisallowNull; break; default: throw new ArgumentOutOfRangeException("valueRequired"); } TypeSchemaKey key = new TypeSchemaKey(contract.UnderlyingType, resolvedRequired, minLength, maxLength); return key; }