Базовая ссылка на объект ASP.NET не установлена ​​на экземпляр для поиска по внешнему ключу - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть эти запросы.Первая initialData получает список идентификаторов без фильтра, а второй запрос отфильтровывает результаты на основе пользовательских данных.FieldId и CategoryId являются внешними / первичными ключами их собственной таблицы.Проблема в том, когда приложение загружается впервые, через него отправляются нули, и это приемлемо.Однако, когда он достигает второго запроса, я получаю ссылку на объект, не установленную на ошибку экземпляра.

Есть ли такая вещь, как нулевой текстовый идентификатор в .net core / c #?

var initialData = (from item in dbContext.DocumentCategories
    join df in dbContext.DocumentFields
    on item.Id equals df.DocumentCategoriesId
    join dfs in dbContext.DocumentFieldsStore
    on df.Id equals dfs.DocumentFieldsId
    select new SearchDocumentsListViewModel
    {
        CategoryId = item.Id,
        DocumentId = dfs.DocumentsId,
        FieldId = df.Id
    })
    .ToList();

initialData = initialData
.Where(u => u.CategoryId.Contains(CategoryId) &&
u.FieldId.Contains(FieldId) &&
u.Data.Contains(FilterInput.Data))
.ToList();

Я также обнаружил, что когда я ставлю "0" в качестве значения, возникает та же ошибкано если я добавлю что-то вроде «abc», все будет хорошо.

ПРИМЕЧАНИЕ. Я использую GUID для своих идентификаторов

1 Ответ

0 голосов
/ 06 декабря 2018

Ответить очень сложно, но на основе предоставленной вами информации.

Похоже, что при первой загрузке данных в "initialData" вы забыли инициализировать свойство "Data".

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