Size: a a a

.NET Chat Убежище

2017 September 08

VK

Vladislav Khapin in .NET Chat Убежище
у тебя эти абстракции не используются нигде
источник

VK

Vladislav Khapin in .NET Chat Убежище
они есть просто потому что на SO так написали или еще где
источник

λ

λετучαя рыбα in .NET Chat Убежище
Vladislav Khapin
у тебя эти абстракции не используются нигде
В интерфейсах остальных репозиториев
источник

g

gsomix in .NET Chat Убежище
Vladislav Khapin
они есть просто потому что на SO так написали или еще где
Выпей чаю, няш. С лимоном.
источник

λ

λετучαя рыбα in .NET Chat Убежище
Они есть, чтобы не копипастить круд по всем интерфейсам.
источник

VK

Vladislav Khapin in .NET Chat Убежище
λετучαя рыбα
Они есть, чтобы не копипастить круд по всем интерфейсам.
интерфейс к данным имеет смысл, но по мне не имеет смысл обобщенный интерфейс к данным, который потом каждый класс реализует.

public interface IArticlesRepository : IAbstractRepository<ArticleEntity> { }

Зачем это? Не проще IArticlesRepository\Gateway оставить и всю остальную абстрактную мишуру состричь?
источник

IC

Ilya Chernoudov in .NET Chat Убежище
λετучαя рыбα
Чтобы писать юнит-тесты для сложных сервисов и отдельно для работы с данными. Думаю, что так проще отлаживать код.
Разве ef 7 не предоставляет инструменты тестирования и моков из коробки?
источник

λ

λετучαя рыбα in .NET Chat Убежище
Vladislav Khapin
интерфейс к данным имеет смысл, но по мне не имеет смысл обобщенный интерфейс к данным, который потом каждый класс реализует.

public interface IArticlesRepository : IAbstractRepository<ArticleEntity> { }

Зачем это? Не проще IArticlesRepository\Gateway оставить и всю остальную абстрактную мишуру состричь?
Не очень понимаю мысль, как можно состричь эту мишуру? Просто если избавиться от абстрактного класса репозитория, то придется 4 раза писать один и тот же код для каждого репозитория. Или этого как-то можно избежать, не используя базовый класс?
источник

O

Oleg in .NET Chat Убежище
λετучαя рыбα
Не очень понимаю мысль, как можно состричь эту мишуру? Просто если избавиться от абстрактного класса репозитория, то придется 4 раза писать один и тот же код для каждого репозитория. Или этого как-то можно избежать, не используя базовый класс?
Расширения?  😄
источник

λ

λετучαя рыбα in .NET Chat Убежище
Ilya Chernoudov
Разве ef 7 не предоставляет инструменты тестирования и моков из коробки?
Ведь тогда придется хардкодить EFCore без возможности спрыгнуть на лик2дб или какой-нибудь даппер.
источник

Г

Гід in .NET Chat Убежище
Чуваки плес найдите мне тутор как правильно мапить МОДЕЛЬ В СУЩНОСТЬ
источник

Г

Гід in .NET Chat Убежище
Не могу уже найти 10 лет
источник

Г

Гід in .NET Chat Убежище
щас опять костыли делать
источник

IC

Ilya Chernoudov in .NET Chat Убежище
λετучαя рыбα
Ведь тогда придется хардкодить EFCore без возможности спрыгнуть на лик2дб или какой-нибудь даппер.
А ты используешь linq experssions?
источник

λ

λετучαя рыбα in .NET Chat Убежище
Oleg
Расширения?  😄
Там через ДИ контекст вставляется, расширения же не могут в приватные поля. Либо надо выключать ефовский changetracking и лепить короткоживущие контексты чз using. Наверно это хорошо, тогда чендж трекингом ноги не будут отстреливаться.
источник

λ

λετучαя рыбα in .NET Chat Убежище
Ilya Chernoudov
А ты используешь linq experssions?
Только изолированно в репах :)
источник

IC

Ilya Chernoudov in .NET Chat Убежище
λετучαя рыбα
Только изолированно в репах :)
Ого, а как поиск работает?
источник

O

Oleg in .NET Chat Убежище
не могут, да. но это просто как вариант не копипастить реализацию интерфейса 100500 раз. а вообще абстрактный класс вполне норм решение
источник

VK

Vladislav Khapin in .NET Chat Убежище
λετучαя рыбα
Не очень понимаю мысль, как можно состричь эту мишуру? Просто если избавиться от абстрактного класса репозитория, то придется 4 раза писать один и тот же код для каждого репозитория. Или этого как-то можно избежать, не используя базовый класс?
я бы повторял код и все.
источник

VK

Vladislav Khapin in .NET Chat Убежище
у тебя класс представляет отдельную таблицу
источник