如何验证一个字段只包含字母数字、空格、破折号并且始终包含至少一个字母或数字字符?

How to validate a field only contains alphanumerics, spaces, dashes & always contains at least one alpha or numeric character?

我有一个输入字段需要在 C# 中添加验证。该字段应该只允许字母数字、空格、破折号,并且必须至少包含一个字母或数字字符。我有函数的布局,但我不知道如何制定if语句的条件。

//function call
 ValidateSchoolIDField(request.SchoolID, "School ID", validationErrors);

//function
private static void ValidateSchoolIDField(string value, string fieldname, List<ValidationError> validationErrors)
{
     if (request.SchoolID != alphanumeric/space/dash) 
        validationErrors.Add(new ValidationError("ivalid input for " + fieldName)):
} 

请尝试以下正则表达式

Regex.IsMatch(inputString,"[a-zA-Z0-9\s-_]");