Элемент C# отсутствует в списке и не имеет значения null или пробелы
Здравствуйте!
Мы работаем над программой, в которой вы можете создавать новые "папки" и загружать в них файлы.
Проблема в том, что я хочу сделать это внутри Папки, нельзя создавать две подпапки с одинаковыми именами.
Вот мой код
while (string.IsNullOrEmpty(folderName) || !foglalt || !string.IsNullOrWhiteSpace(folderName))
{
folderName = Console.ReadLine();
if (string.IsNullOrEmpty(folderName) || string.IsNullOrWhiteSpace(folderName))
{
Console.WriteLine("Ez a mező nem lehet üres. \nÚj mappa neve:");
//(Can't be null. \nNew foldername:)
break;
}
if (p.FolderList.Contains(folderName))
{
foglalt = true;
Console.WriteLine(
"Ez a mappanév egyszer már szerepel ebben a környezetben. Kérlek válassz újat!\nÚj mappa neve:");
//(That name is already taken. \nNew foldername:)
}
else {foglalt = false;}
}
("foglalt" - это бул, значит "взято".)
Должно быть, что-то не так во время, но я просто не знаю что.
Не могли бы вы помочь мне исправить это?
1 ответ
Решение
while (true)
{
folderName = Console.ReadLine();
// if folder name is null or empty or whitespace, ask for a new folder name
if (string.IsNullOrEmpty(folderName) || string.IsNullOrWhiteSpace(folderName))
{
Console.WriteLine("Ez a mező nem lehet üres. \nÚj mappa neve:");
//(Can't be null. \nNew foldername:)
}
//if folder name already exists, ask for a new one
else if (p.FolderList.Contains(folderName))
{
Console.WriteLine("Ez a mappanév egyszer már szerepel ebben a környezetben. Kérlek válassz újat!\nÚj mappa neve:");
//(That name is already taken. \nNew foldername:)
}
else //Folder Name is valid
break; //proceed to do stuff with the folder name
}
//Do my stuff with the valid folder name