Господа, дамы, всем привет! Туплю уже пару дней над проблемой: У меня

UnitOfWork repository pattern, есть 2 сущности, которые наследуются от abstract class (Base) в таком виде:
abstract class BaseEntity
public class NewUser : BaseEntity
public class User : NewUser

NewUser и User мапятся в одну таблицу Users с дискриминатором (11 для NewUser и 12 для User).
Однако, когда беру NewUsers через _unitOfWork.RepoNewUsers.GetAll() - в DBContext получаю записи с User.

SQL - query при этом содержит WHERE с указанием обоих дискриминаторов, хотя в Репозитории тип указан NewUser. (_entitySet = _dbContext.Set(<TEntity>), где TEntity и есть NewUser

Ну и второй симптом (следствие): когда создаю запись NewUser, в контексте есть, допустим, 4 записи User (контекст неправильно вытащил данные), на этапе сохранения пытается присвоить NewUser id = 5, и в контекст добавляется уже существующий NewUser с ID=5 из таблицы, State меняется с Added на Unchanged и как бы добавления не происходит.

Кажется, тема должна быть известна, но не могу найти подобного, подскажете советом, что делаю не так? Если данных мало - скажите, пож-та, какие ещё требуются

5 ответов

57 просмотров

Подскажите, пожалуйста, а какая ещё есть разница между классами User и NewUser?

Dad-Edd Автор вопроса
Dad-Edd Автор вопроса
Dad-Edd Автор вопроса
Dmitriy Yevchenko
Подскажите, пожалуйста, а какая ещё есть разница м...

Пока моя гипотеза заключается в том, что нужно base class описать в конфиге EF, в виде: modelBuilder.Entity<SiYatsEntityBase>().UseTphMappingStrategy(); Как будто EF не понял иерархию

Dad Edd
Пока моя гипотеза заключается в том, что нужно bas...

Для EF не надо реализовывать паттерн Unit of work, он уже под капотом сидит.

Похожие вопросы

Обсуждают сегодня

if (user?.choseType === 'oneDay') { await ctx.reply( 'Добро пожаловать в команду «Магнита»! Правда, на один день ☺️ ', ); await ctx.s...
Kokni
1
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Это фейк @cruppto_newbot?
Antskup
13
всем салют сегодня утро заметил что бот не может отправлять фотки по url. ручками в браузере ссылка норм открывает фотки. падает ошибка 'Bad Request: failed to send message ...
Vasya Ivanov
9
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Карта сайта