Я чувствую, что могу что-то сделать, но я далеко не хороший программист, и это меня раздражает.
Используя Entity Framework Core, я создаю проект, и мне просто нужно было построить отношения многие ко многим, что требовало от меня использования Fluent API для правильной установки целей.
В тот момент, когда я это сделал, я не смог скомпилировать проект или действительно что-то сделать, так как существующая в проекте структура идентификации по умолчанию мешала. Ошибка была:
The entity type 'IdentityUserLogin<string>' requires a primary key to be defined.
Я потратил немало времени, пытаясь отладить эту проблему, но безуспешно. После быстрого поиска я нашел этот вопрос , который, хотя и не совсем моя проблема (у меня есть один DbContext), решил добавить следующее:
base.OnModelCreating(modelBuilder);
В тот момент, когда я сделал это, проект скомпилировался, и все заработало как положено.
Итак, мой вопрос на самом деле - почему? Может кто-нибудь объяснить, что происходит, почему это происходит, но, что более важно, здорово, что переполнение стека существует, и я смог получить ответ, но, если вы начинающий программист, как бы вы поняли и диагностировали эту проблему?
Я чувствую, что пока переполнение стека отлично подходит для получения ответов, я ленива и очень хочу узнать, почему все происходит так, как они есть.