Значение C # не может быть нулевым, используя Path.Combine - PullRequest
0 голосов
/ 11 декабря 2019

Я пытаюсь создать базу данных с помощью консоли C #, но я получаю сообщение об ошибке, с которым, похоже, не могу найти проблему. Проблема в моей функции Query, когда я пытаюсь определить путь на основе пользовательского ввода. По сути, он просматривает заданную папку в пользовательской папке, а внутри нее - другую подпапку, содержащую файлы, в которых находится информация базы данных. Я использую функцию Path.Combine для динамического определения пути в моем коде, но я получаю следующую ошибку:

ArgumentNullException: значение не может быть нулевым. (Параметр 'path3')

Даже если все строки определены и не равны NULL.

так выглядит строка кода:

path = Path.Combine(Info.path, "infolder", classrooms.inventory, classrooms.geninv, userinput)

А вот весь код, на который ссылаются строки в аргументе пути:

class classrooms
{
    public static string Teacher;
    public static string Roomnumber;
    public static string Changes;
    public static string inventory = "inventory";
    public static string geninv = "GenInv";
    public static string classinv = "ClassInv";
}

и

class Info
    {
        public static string path = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
    }

при необходимости я могу прикрепить свой полный код.

Снимок экрана с ошибкой

1 Ответ

1 голос
/ 11 декабря 2019

Я понял это. Это была неправильно определенная строка, которую функция pathcombine использовала в другом экземпляре кода, и она просто попадалась в ловушку, когда я снова использовал функцию path.combine. Спасибо за все ответы, я бы не подумал посмотреть на это без всякого ввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...