public bool IsValid(Identifier value) { if (!value.HasValue()) { return(false); } var id = value.ToString(); var delimiterIndex = id.IndexOf(Delimiter, StringComparison.Ordinal); if (delimiterIndex == -1) { return(false); } var prefix = id.Substring(0, delimiterIndex); if (!IsKnownPrefix(prefix) && prefix != UnknownEntityPrefix) { return(false); } return(Validations.Identifier.Matches(id)); }
public bool IsValid(Identifier value) { if (!value.HasValue()) { return(false); } var id = value.ToString(); var delimiterIndex = id.IndexOf(Delimiter, StringComparison.Ordinal); if (delimiterIndex == -1) { return(false); } var prefix = id.Substring(0, delimiterIndex); if (!this.prefixes.ContainsValue(prefix) && prefix != UnknownEntityPrefix) { return(false); } var suffix = id.Substring(delimiterIndex + 1); return(Regex.IsMatch(suffix, @"^[\d\w]{10,22}$")); }