Положить серию методов проверки можно.
Это пользовательский ввод, поэтому вы занимаетесь защитным программированием, не ищите исключительных ошибок. Кажется, вы хотели бы знать, почему пользовательский ввод плох. Если это так, простой подход заключается в использовании объекта сбора для посещения каждого метода проверки
public void VerifyData(ValidationErrors errors)
{
ValidateFileExists(errors);
ValidateExtension(errors);
ValidateFileAccess(errors);
...
}
private void ValidateFileExists(ValidationErrors errors)
{
if(!File.Exists...)
{
errors.Add("File does not exists.");
}
}
public void CallingMethod(UserInput input)
{
_dataToVerify = input;
var errors = new ValidationErrors();
VerifyData(errors);
if(errors.Count > 0)
ShowErrors(errors);
else
ShowSuccess();
}
Я просто поместил данные в переменную экземпляра для простоты, вы можете передать это в свой метод проверки. Этот подход прост, но позволяет вам рассказать пользователю что-то о вводе и о том, как его исправить.