• Нужна ли прослойка между Entity Framework и сайтом?

    @lair
    Пункт 0: используйте EF CodeFirst или POCO templates, тогда у вас будут «чистые классы» in the first place.
    Пункт 1: все нижесказанное верно до тех пор, пока у вас контроллер работает напрямую с DAL, а не со слоем бизнес-логики или сервисов.

    Есть таблица dbUsers в базе. В EF создаются классы dbUsers. Неким образом создается класс User. Слой данных работает с объектами EF а пользователю (контроллеру) отдает красивые чистые объекты класса User без лишней информации.

    Это лишняя прослойка.

    Есть таблица dbUsers в базе. В EF создаются классы dbUsers. Слой данных напрямую работает с этими объектам и передает их в контроллер. Т.е. контроллер работает с объектами типа dbUsers…

    Это вполне нормально.
    Ответ написан
    Комментировать
  • JQuery: как сделать свой $.post?

    @lair
    Еще можно использовать $.ajaxPrefilter, и спрятать обработку в него. Помогает, если действительно везде одинаково.
    Ответ написан
    Комментировать
  • JQuery: как сделать свой $.post?

    @lair
    У вас, на самом деле, ошибка в проекте. Если на сервере что-то не так, он не должен возвращать успешный JSON со свойством status, он должен возвращать HTTP error status. После чего вы радостно вешаете глобальный обработчик на $.ajaxError и наслаждаетесь результатом.
    Ответ написан
    4 комментария
  • Почему ЭЦП хранится на внешнем носителе (флешке, смарт-карте и тд)?

    @lair
    Да, можете. Детали зависят от конкретного криптопровайдера и ЭЦП.

    Другой вопрос — зачем вам это нужно, потому что в некоторых случаях это противозаконно.
    Ответ написан
    Комментировать
  • Отчеты об ошибках в .NET-приложении?

    @lair
    Ну вообще, у MS есть штатное решение под общим названием Dr.Watson. Видели когда-нибудь стандартное окно «Отправить сообщение об ошибке»? Вот это оно. Можно зарегистрироваться в Microsoft и получать эти сообщения, анализировать их, и выпускать патчи.

    Но вообще, я хочу сказать, что «не требуя подтверждения от пользователя», вместе со всем вами перечисленным — это нарушение privacy. Даже MS спрашивает, отправлять ли такие отчеты.
    Ответ написан
    2 комментария
  • RAID 1 (зеркало) перенос на другие большие HDD

    @lair
    Любой современный рейд позволяет постепенное увеличение размера. Соответственно, меняем один диск, ребилдим, меняем второй, ребилдим (для винды все это время ничего не менялось), увеличиваем массив (винда внезапно обнаружила, что она живет на диске побольше, чем раньше), растягиваем системный раздел (если это надо).
    Ответ написан
    4 комментария
  • Как синхронизировать данные при использовании EF CodeFirst?

    @lair
    К счастью, EntityFramework в последней версии поддерживает простейшие миграции автоматически и в девелоперской копии данные не теряются, но что делать с продакшн копией в которой куча данных?

    Если вы используете EF CodeFirst migrations, то вы можете сделать любой код по миграции данных.

    Ведь при следующем паблишинге на сервер зальется полупустая девелоперская БД? Как настроить студию чтобы она обновляла структуру, но не трогала данные?

    А что вы понимаете под «паблишингом»?
    Ответ написан
  • Как разделить веб-сервис на классы?

    @lair
    Хочется отделить мух от котлет и не сваливать все в один класс, но не хочется публиковать отдельные сервисы для каждого плагина.

    Вот эта посылка — неверна. Если уж вы хотите разделить ответственность между классами, то и между сервисами ее неплохо бы разделить. Low-cohesion-сервис — не меньшее зло, чем low-cohesion-класс.

    На клиенте такой способ позволяет добиться желаемого — там автоматически генерируется несколько клиентов для одного сервиса, но на сервере все равно все сваливается в один класс т.к. он реализует все интерфейсы.

    Ну вообще (если отвлечься от SRP), имеем дело со стандартным шаблоном facade. Ваш «один класс на сервере» — это фасад, он ничего не делает, а просто перенаправляет вызовы в соответствующие конкретные классы.

    Но, повторюсь, это не ваш случай.
    Ответ написан