powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Архитектура приложения, надо ли дублировать сущности под каждый слой
25 сообщений из 295, страница 6 из 12
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086017
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.мне думается термин дто вообще надо выкинуть из топика. Дто это вообще не про логику, не про модель, не про репозитории. Там другие названия есть.

Не надо выкидывать. DTO прекрасно работает с анемичной моделью, т.е. у нас есть дата-сервисы, и мы взаимодействуем с ними с помощью DTO. Например CRUD-сервисы можно сделать базовыми и они будут работать сразу для всех существующих таблиц в БД. А затем запиливать дополнительную логику в сервисах. Это стандартный путь для большинства энтерпрайзов.

Вот только DDD здесь не пахнет, а это другая архитектура и гораздо меньше подходит для CRUD-базед систем.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086020
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVosttпропущено...


Потому что в угоду NH, ему нужно, чтобы он работал. А это всего лишь поле с данными, EF прекрасно работает без virtual, а в NH намудили (потому что NH -- УГ), вот и страдайте. Зло - понятие нравственности, противоположное понятию добра, означает намеренное, умышленное, сознательное причинение кому-либо вреда, ущерба, страданий.

Таки в чём зло? :)

хвост ненавидит хибернейт. а ненависть - это зло
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086022
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA Зло - понятие нравственности, противоположное понятию добра, означает намеренное, умышленное, сознательное причинение кому-либо вреда, ущерба, страданий.

Таки в чём зло? :)

Эти классы -- не POCO. Какие ещё аргументы нужны? Для virtual полей допустимо иметь в классе 2 значения: заданное, и прокси-значение. Это не просто зло, это ахтунг полнейший.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086024
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawskyANAпропущено...
Зло - понятие нравственности, противоположное понятию добра, означает намеренное, умышленное, сознательное причинение кому-либо вреда, ущерба, страданий.

Таки в чём зло? :)

хвост ненавидит хибернейт. а ненависть - это злоТы это от ответа не увиливай: 18323802 :)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086026
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawхвост ненавидит хибернейт. а ненависть - это зло

Я не ненавижу, я его презираю. Он своё отжил. Да, было время, когда EF был кособокий и кривой. Но щас пора брать лопату и закапывать NH глубоко.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086028
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANA Зло - понятие нравственности, противоположное понятию добра, означает намеренное, умышленное, сознательное причинение кому-либо вреда, ущерба, страданий.

Таки в чём зло? :)

Эти классы -- не POCO. Какие ещё аргументы нужны?Как какие? Доказывающие то, что это причиняет кому-либо вред, ущерб, страдания :)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086030
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttkmawхвост ненавидит хибернейт. а ненависть - это зло

Я не ненавижу, я его презираю. Он своё отжил. Да, было время, когда EF был кособокий и кривой. Но щас пора брать лопату и закапывать NH глубоко.Да, пора переходить на Dapper и микросервисы :)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086031
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЕщё нужно выяснить у камрада kmaw почему объект класса User не может существовать без реляционной БД и ORM.
И почему не может в таком виде как есть храниться в MongoDB :)

так я от ответа и не увиливаю. это опять DTO. еще раз: нет ОРМ - нет Entity
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086032
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

DTO - УГ, потому, что нет однозначной Логики отображения ДТО на Модель
В ВИПРОС есть Частичное представление Макротипа с четкой логикой отображения
ВИПРОС может автоматически сгенерировать всевозможные Частичные представления макротипа (но лучше все ж создать по отдельности, так как всевозможных генерируется дофига :)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086033
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКак какие? Доказывающие то, что это причиняет кому-либо вред, ущерб, страдания :)

Хм. А если бы NH требовал, чтобы любые примитивные значения можно было определять только через специальные обёртки?

Код: c#
1.
2.
3.
4.
5.
6.
public class User
{
    public virtual Int32NhValue Id { get; set; }
    public virtual StringNhValue Name { get; set; }
    public virtual IList<Phone> EmergencyPhones { get; set; }
}



норм?
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086034
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawнет ОРМ - нет Entity

Не верный ответ.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086035
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

ты лучше дальше понятия Проекция (если я правильно тебя понимаю, то это ВИПРОСовские частичные представления) не отходи
остальная мишура - технические костыли
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086036
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДа, пора переходить на Dapper и микросервисы :)

Совсем? EF 7 смотрел?
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086037
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosDTO - УГ, потому, что нет однозначной Логики отображения ДТО на Модель

Есть. Это конфигурация проекции.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086038
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmaw,

надо сначала определиться - что такое ентити и нафига ему ОРМ какой то
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086039
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

по моему пониманию дто работает прекрасно с любой моделью в любом виде. Так как это по сути просто контракт сервиса "в последней инстанции". Данные обрабатываются логикой в любом виде и экспозятся через сервисы куда угодно. Но то что "с той стороны" сервисов - уже не релевантно по сути к вопросу доступа к данным и их обработке. А, как я понимаю, именно это тут и обсуждается в первую очередь. То есть я считаю что дто это передача данных во внешнюю подсистему\систему. Даже если она живет в том же процессе, если мы сказали дто, значит данные пошли в другой домен.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086040
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

ты лучше дальше понятия Проекция (если я правильно тебя понимаю, то это ВИПРОСовские частичные представления) не отходи
остальная мишура - технические костыли

Частичное представление это уже слой презентации, он кстати вполне может быть завязан на DTO (минуя дополнительные классы, типа вью-моделей, что хорошо для SPA).
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086041
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosчто такое ентити

Ентити определяется идентификатором (Id, Uid, Guid...). Два объекта с одинаковым идентификатором считаются равными, без сравнения их содержимого. Это Entity.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086042
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosDTO - УГ, потому, что нет однозначной Логики отображения ДТО на Модель

Есть. Это конфигурация проекции.
покажи пример (Проекция - это метаданные, подмножество метаданных макротипа. Не всегда возможно Проекция, так как Проекция накладывает доп ограничения на целостность макротипа - нужны значения по умолчанию как минимум, если например, Проекция редактируема и т.д.)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086043
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.А, как я понимаю, именно это тут и обсуждается в первую очередь

это Вам и мне понятно.
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086044
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

значит ентити ваш - Объект с лайфтаймом (коллекция)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086047
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRoshVostt,

ты лучше дальше понятия Проекция (если я правильно тебя понимаю, то это ВИПРОСовские частичные представления) не отходи
остальная мишура - технические костыли

Частичное представление это уже слой презентации, он кстати вполне может быть завязан на DTO (минуя дополнительные классы, типа вью-моделей, что хорошо для SPA).

это про проекции был вопрос, при чем тут слой презентации
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086048
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRoshVostt,

ты лучше дальше понятия Проекция (если я правильно тебя понимаю, то это ВИПРОСовские частичные представления) не отходи
остальная мишура - технические костыли

Частичное представление это уже слой презентации, он кстати вполне может быть завязан на DTO (минуя дополнительные классы, типа вью-моделей, что хорошо для SPA).
Частичное представление - это Точка зрение на Модель определенной Роли (Актора)
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086049
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"нет ОРМ - нет Entity"
=нет объектно реляционного мапера - нет энтити
если мы натравливаем ef не на базу, а на xml файл, не меняя код, просто меняя источник данных, энтити исчезают?
Таким образом невозможно знать есть энтити или нет, не видя connectionstring, так выходит?
...
Рейтинг: 0 / 0
Архитектура приложения, надо ли дублировать сущности под каждый слой
    #39086052
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,

ОРМ разные, есть например расшифровка - Объект Роле Моделинг
...
Рейтинг: 0 / 0
25 сообщений из 295, страница 6 из 12
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Архитектура приложения, надо ли дублировать сущности под каждый слой
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]