Start:
if(fileName.Contains("$track"))
if(musicInfo.Tag.Track.ToString() != "") {
fileName.Replace("$track", musicInfo.Tag.Track.ToString());
}
else {
switch(System.Windows.Forms.MessageBox.Show("Error: Track # missing from tag info", "Error", System.Windows.Forms.MessageBoxButtons.AbortRetryIgnore, System.Windows.Forms.MessageBoxIcon.Error)) {
case System.Windows.Forms.DialogResult.Abort:
fileName = "ABORTED";
return fileName;
case System.Windows.Forms.DialogResult.Retry:
goto Start;
case System.Windows.Forms.DialogResult.Ignore:
fileName.Replace("$track", "");
}
}
Я не могу придумать лучшего способа написать это, было бы еще 7 блоков этого кода.Есть ли более эффективный способ кодирования этого?
Я не уверен, что более эффективным, но 'goto' это ненавидела кусок кода для многих людей .. Это будет получить ваш пользователь застрявших в цикле также, если имя файла содержит трек и тег дорожка пуста, нажатие на повторную попытку просто приведет их к следующему сообщению для повторного повторения – Sayse
Dino incoming ... http://i.stack.imgur.com/thuIW.png – Zelldon
ehh должен ли я просто использовать его в цикле while? Я чувствую, что это просто добавит больше кода, я понимаю, что он переносит их в другую ячейку, которая предназначена для того, чтобы они могли добавлять какие-либо недостающие детали в тег и затем повторять попытку. – kenyunot