riot26: Протокол HMAC создавался для аутентификации пользователя. По сколько и клиент и сервер должны использовать один ключ, то у нас должна быть какая-то возможность передать этот ключ клиенту. Если такой ключ отдавать по запросу с сервера, тогда любой сможет запросить этот ключ, а следовательно быть аутентифицированным. Выходит, наверное, что я не правильно провожу аналогию с аутентификацие по логину и паролю, пытаюсь представить себе как её замену. Тогда где можно применить этот алгоритм?
sim3x: Как же? Bson специально так проектировался что бы быть более быстрым при сериализации/десериализации за счёт новых типов. К тому же он является слегка более легковесным. Если не ошибаюсь, то преимущество в около 5% по размеру.
В данном конкретном случае под эффективностью я подразумеваю, быстрый доступ/поиск в случае если файл/объект часто используется, и оптимизировать хранение, если он давно не использовался.
sim3x: Идея в том, что бы иметь какой-то сервис, который будет за этим следить. Причем что бы это был какой-то комплекс мер, например json, трансформировать в bson. Тем самым мы увеличиваем эффективность нашего хранилища.
sim3x: Есть такая вещь как PackJpg - декодирует JPG, а затем очень аккуратно сжимают его, используя более эффективный метод. Причем такое сжатие происходит без потерь
ozknemoy: Устарелая в том плане, что ангулар2 делали с нуля, ломая обратную совместимость. Очень многое было переосмеслено, ввод новых паттернов, отказ от старых, чего уж стоит, что ангулар можно писать на трёх языках: typescript, javascript, dart
Можете их разделить, но оба слоя будут зависимы от Entity Framework, что то же не есть хорошо. Можно к примеру создать dll куда мы сложим только сущьности, без EntityFramework, но тогда какой это уровень доступа к данным без ORM. Я поступаю следующим образом -создаю новый project который компилируется в dll, он внутри содержит папку Entities, сюда складываем все наши сущности, и папку Services, здесь у нас сами сервисы + DTO-объекты, ну и собственно EntityFramework. И уже из самого приложения в References указываем нашу скомпилированную либу, и пользуемся сервисами на здоровье.
Можно использовать Service паттерн. Это класс в котором содержится наша бизнес логика. Его конструктор принимает в качестве аргумента контекст(класс наследующий DbContext). Для удобства советую использовать Injector