Теперь в вашем коде вы продолжаете находить ошибки времени выполнения, потому что вы путаете параметры.Вы можете изменить порядок «имя» и «фамилия» или использовать один, когда вы должны были использовать другой.Значение строго типизированных языков в том, что они находят эти ошибки во время сборки, а не во время выполнения.
Трудно сказать, каков ваш вопрос на самом деле .Учитывая это, на стороне разработчика должна быть некоторая ответственность.Точно, о каких параметрах мы говорим здесь?Если у вас есть несколько параметров, это, как правило, означает, что вам нужно реорганизовать ваш код.Например:
void MyMethod(string firstName, stringMiddleName, string lastName,
string phoneNumber, string email, string country, string city,
string state, string zipcode, string countryISO,
string pseudonym, string title, string addressLine1, string addressLine2)
Очевидно, что это запутанно.Создайте объект ContactInfo
, охватывающий большинство, если не все эти параметры, и затем вы можете написать:
void MyMethod(ContactInfo contact)
РЕДАКТИРОВАТЬ:
Вы можете, если вы используете VS2010, использовать именованный параметр функция.Это позволяет передавать их в другом порядке.
string ConcatName(string firstName, string lastName)
{
return (firstName + " " + lastName);
}
string myName = ConcatName(lastName: "Crosby", firstName: "Bryan")
Вывод:
Брайан Кросби
I все еще внимательно посмотрю на ваш код и посмотрим, сможете ли вы провести рефакторинг методов и классов.