У меня есть этот же код на двух местах:Как удалить этот повторяющийся код
if (amountUnit.ToLower().Contains("x"))
{
string[] amount = amountUnit.Split('x');
x = amount[0].Trim();
y = amount[1].Trim();
}
else
{
x = "1";
y = amountUnit.Trim();
}
//
unit = textInBrackets.Replace(amountUnit, "");
name = "";
for (int z = 0; z < i; z++)
{
name += someArray[z];
name += " ";
}
name = name.Trim();
Точный код повторяется дважды. Как это исправить? Если я извлечу его по новому методу, у меня будет много параметров ввода ref. Есть ли другой способ? Если это невозможно, просто часть до комментариев?
, какие параметры вы указываете здесь? –
Похоже, у вас должно быть два разных метода - один для 'x' и' y', а другой для 'name'. Если вы инкапсулируете 'x' и' y' в структуру, у вас будет один параметр 'ref' (или рассмотрите _returning_ эту структуру и измените ее в вызывающем абоненте). – Oded
Возможно, вы можете вернуть более сложную структуру или класс, содержащий все ваши возвращаемые данные? –