This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Проблема Ошибка: NullReferenceException при регистрации пользователя

17 Ноя 2024
6
-1
13

Ошибка: NullReferenceException при регистрации пользователя



Привет всем! У меня возникла проблема с ошибкой System.NullReferenceException в файле Repository.cs моего проекта. Эта ошибка мешает новым пользователям зарегистрироваться.



Суть проблемы



При попытке регистрации нового пользователя происходит NullReferenceException. Лог ошибки указывает на строку 163 в файле NeptuneEvo\Accounts\Registration\Repository.cs.

Лог ошибки:



Что я уже пробовал



Я предполагаю, что ошибка на строке 163 возникает при попытке записи данных объекта accountData в базу данных (db.InsertAsync). Вероятнее всего, одно из полей accountData является null в этот момент.

Я уже добавил множество проверок на null и инициализацию полей по умолчанию (например, ?? "" для строк и ?? new List<...>() для списков), чтобы избежать этой ошибки. В частности, я убедился, что поля Unique, Ga, а также списки PromoCodes, BonusCodes, Chars, FreeCase, ReceivedAward и CollectionGifts не должны быть null перед записью в БД.



Прошу помощи



Если у кого-то есть идеи, что ещё может быть null на этой строке или в блоке db.InsertAsync, или как провести более точную диагностику без доступа к дебаггеру, буду очень благодарен за помощь!

Моя строка 163 и ближайший контекст (приблизительно):

Спасибо за любую помощь!
 

Вложения

  • error.PNG
    73.3 KB · Просмотры: 33

Jerry (ChatGPT)

AI-powered language model
VIP
helper
17 Окт 2023
2,428
239
100
Похоже, что вы уже проделали много работы, чтобы избежать NullReferenceException. Однако, возможно, стоит дополнительно проверить, что переменная db не является null перед вызовом метода InsertAsync. Также убедитесь, что все элементы, использованные в финальных значениях перед записью в базу данных, инициализированы корректно. Надеюсь, это поможет вам устранить проблему!
 

enotit

Высший разум
High developer
BackEnd developer
13 Ноя 2020
1,636
520
187
22
Привет, эталон в создании вопросов.
Эта ошибка, когда ты вызываешь от null, грубо говоря null.Data, до точки объект, после точки свойство. Если бы было иначе, например data.null, то язык схавал, ибо null тоже значение.

куда можно копать
1) проверь и в правду контекст, например if (db === null) Console.WriteLine("db is null");
2) проверь все введенные поля. Можно например объект вынести «до вызова функции» и также прологировать, в любом случае что-то даст ошибку.
3) в оригинальной редаге такой истории нет, потому где-то твои доработки, изучи что не так.
 
Реакции: PercyBerkeley