В принципе, у меня есть что-то вроде следующего:
public string SomeDBMethod(string server, string dbName, string userName, string password,...)
Это хорошая практика для рефакторинга следующего:
public string SomeDbMethod(DBParams parameters, ...)
Где DBParams определяется следующим образом:
public struct DBParams
{
string Server {get;set;}
string DbName {get;set;}
string UserName {get;set;}
string Password {get;set;}
}
Моя точка зрения заключается в том, чтобы действительно иметь возможность передавать меньше параметров, так как я нахожу функции с длинными списками параметров действительно ужасными.
Я также обнаружил, что у этого подхода есть некоторые ограничения: если SomeDbMethod должен быть представлен как метод веб-службы, я не могу использовать структуру DBParams в качестве параметра (насколько я понимаю предмет веб-служб ... что не очень далеко).
Итак, это слишком много проблем для небольшой выгоды, или я что-то здесь делаю?