У меня есть несколько методов в приложении, над которым я работаю, с дополнительными параметрами, некоторые из которых перечислены. В настоящее время для этого я пишу методы с похожим типом подписи:
public void SomeMethod(string myFirstParam = "", string mySecondParam = "", MyEnum myThirdParam = (MyEnum )(-1)){
if (myThirdParam != (MyEnum ) (-1))
{
//do something with it
}
}
Итак, мой первый вопрос: есть ли какая-то ошибка для этого подхода, который я не осознал, но со временем станет мучительно осознавать, а во-вторых, есть ли более правильное или, по крайней мере, элегантное решение?
Я должен сказать, что мы контролируем ввод этого метода, он используется внутри, поэтому я не беспокоюсь о том, что кто-то забрасывает значение -1, чтобы придумать работу.