21 / 21 / 3
Регистрация: 24.05.2014
Сообщений: 1,058
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
Entity framework добавляет сущность, когда этого не просили15.05.2024, 15:48. Показов 941. Ответов 23
Метки нет (Все метки)
В комментариях описан текущих ход событий тестового прогона, а не общий случай
Возвращаемся в
Нарушено "PK_Sockets" ограничения PRIMARY KEY. Не удается вставить повторяющийся ключ в объект "dbo.Sockets" Ошибка добавления Sockets возникает при попытке обновления CpuSpec. Я так понимаю, что EntityRakework "облегчает" мне задачу, подсовывая создание Sockets из-за того, что я добавил навигацию к этой сущности. А как сделать, чтобы он этого не делал?
0
|
15.05.2024, 15:48 | |
Ответы с готовыми решениями:
23
Не дает сохранить сущность в Entity Framework Понятия Сущность, Модель и Контекст в Entity Framework Core Entity Framework добавляет ненужный столбец в запрос Entity framework не добавляет новое значение в базу данных |
3635 / 2551 / 714
Регистрация: 02.08.2011
Сообщений: 6,889
|
|
15.05.2024, 22:15 | 2 |
Сообщение было отмечено Титан_1 как решение
Решение
Указывать FK на запись сокета вместо Navigation Property.
Код у вас с запашком: EF-сущности ничего не должны знать о своих DB-контекстах, это просто плоские модели с данными. Есть такой паттерн - Repository, используйте его. Добавлено через 33 секунды По-хорошему надо бы глянуть на код моделей.
0
|
12286 / 8638 / 1307
Регистрация: 21.01.2016
Сообщений: 32,504
|
|
16.05.2024, 04:38 | 3 |
Вот это максимально отвратительный подход. В конструкторе сущности ни к какой базе (ни к файлу, ни запрос к сети) лезть нельзя.
0
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
16.05.2024, 14:28 | 4 |
Типичная проблема со всеми ОРМ. Вы никогда не заставите ОРМ делать то, что вы хотите. Это он будет делать то, что он хочет. Не здесь, так в чём нибудь другом. Привыкайте.
А лучше отвыкайте от вебоговнкодерского подхода, выкиньте EF в помойку и используйте нормальный SQL, который и был создан для работы с БД.
0
|
16.05.2024, 14:38 | 5 |
Если нормально знать SQL, уметь анализировать то что генерирует EF, править LINQ так как нужно, то можно прекрасно и с ним работать... Но гораздо проще SqlCommand + SQL, хоть и писанины больше...
0
|
12286 / 8638 / 1307
Регистрация: 21.01.2016
Сообщений: 32,504
|
|
16.05.2024, 15:27 | 6 |
Типичная проблема незнания инструмента, с которым работаешь. ОРМ тут ничем не отличается от перфоратора или скальпеля. Не надо проецировать свои неудачи и некомпетентность на то, на что не хватило ума осилить.
1
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
16.05.2024, 16:38 | 7 |
Осталось только понять, зачем анализировать весь этот мусор генерируемый EF и LINQ, если нормально знаешь SQL. Гораздо проще написать SQL тогда. ОРМ - инструмент для вебоговнокодеров, не осиливших нормальное программирование для БД.
Только вот перфоратор и скальпель полезные инструменты и без них не обойтись в определенных задачах, ну или гораздо сложнее без них чем с ними. С ОРМ же все наоборот - это излишнее усложнение, без которого обойтись гораздо легче, чем с ним. Но т.к. вебоговнокодеров которые не умеют писать нормальный код наплодили выше гор, вот и приходится для них создавать бессмысленные инструменты на замену отстутствующей головы на плечах.
0
|
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,406
|
|
17.05.2024, 21:50 | 8 |
1
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
17.05.2024, 22:01 | 9 |
0
|
1517 / 908 / 328
Регистрация: 17.05.2015
Сообщений: 3,428
|
|
19.05.2024, 14:08 | 10 |
весь С# - инструмент для говнокодеров, не осиливших нормальное программирование на ассамблере
2
|
2314 / 1799 / 748
Регистрация: 27.07.2012
Сообщений: 5,326
|
|
20.05.2024, 09:34 | 11 |
Ассемблер для слабаков, которые не понимают всей красоты перфокарт. То потеряное чувство, когда программу можно было потрогать..
3
|
2314 / 1799 / 748
Регистрация: 27.07.2012
Сообщений: 5,326
|
|
20.05.2024, 09:47 | 14 |
Ну красота же!
1
|
12286 / 8638 / 1307
Регистрация: 21.01.2016
Сообщений: 32,504
|
|
24.05.2024, 07:55 | 15 |
Это усложнение только для людей, которые его не осилили и везде ноют, что это "усложнение". То, что тебе обойтись без ОРМ проще я не спорю. А вот те, кто осилил, могут переиспользовать куски запросов и стряпать весьма замороченные запросы, которые ты на голом SQL без Dynamic SQL замучаешься писать...
1
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
24.05.2024, 11:46 | 16 |
Уровень "осиления" ОРМа измеряется отношением к нему. А именно, тот кто не осилил - яростно их нахваливает, ибо просто не сталкивался с проектами такого масштаба где от ОРМов начинаются одни проблемы и проще отказаться. Но если клипать типовые круды, то конечно, можно сказать "осилили".
Ну а тот кто действительно осилил, разобрался со всеми кейсами и ограничениями, тот понимает, что краткосрочная выгода от того что можно что то там быстро состряпать ниразу не перекрывает долгосрочные издержки поддержки проекта. Ибо рано или поздно придётся его оттуда выкорчёвывать, если конечно проект раньше не загнётся.
0
|
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,406
|
|
24.05.2024, 11:59 | 17 |
99% проектов имеют типовые круды
зачем выкорчевывать то что работает? и кто мешает написать функции в базе и к ним потом обращаться через орм, если там такие очень уже сложные скл запросы
0
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
24.05.2024, 12:58 | 18 |
Ну да, написанные 100% вебоговнокодерами. Но зачем на них равняться?
Ничто не мешает. Вопрос тут обратный. Что мешает сразу делать нормально, а не через ОРМ?
0
|
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,406
|
|
24.05.2024, 13:23 | 19 |
им плотят и они работают
нормально это как? орм не более прослойка и там тот же скл
0
|
269 / 452 / 12
Регистрация: 21.06.2019
Сообщений: 2,793
|
|
24.05.2024, 13:34 | 20 |
Именно. Ограниченная и бессмысленная прослойка, от которой вреда в целом больше чем пользы. Так зачем она нужна, если уже есть SQL? Аналогия с ассемблером от клоунов выше тут не работает, ибо это точно такой же высокоуровневый язык.
0
|
24.05.2024, 13:34 | |
24.05.2024, 13:34 | |
Помогаю со студенческими работами здесь
20
В чем разница между Entity Framework и Entity Framework Core? Entity Framework. Удаление entity без удаления связей Entity Framework 6 Entity framework One vs Zero-or-One Entity Framework Entity Framework Entity Framework Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |