Я использовал CSLA для одного проекта, и это работало отлично, и сделайте вещи намного более простыми и более опрятными.
Вместо того, чтобы иметь Вашу команду, пишущую бизнес-объекты в их собственном различном персональном стиле, мы знаем, имеют единый стандарт для работы против.
//andy
Отличный вопрос. Я просто провел тест, чтобы подтвердить, прежде чем написать этот ответ.
Если я «Человек А», а вы «Человек Б», то должно произойти следующее:
Обратите внимание, что человек B по-прежнему распознается веб-сайтом как «Человек B», даже если они используют детали сеанса человека А. Поэтому, если у вас есть код, который проверяет права пользователей и т. Д., То эти проверки все равно выполняются в контексте человека Б.
Это может показаться серьезной проблемой, но на самом деле это не так, если программисты не беспечны. Например, единственный эффект, который получил человек B в моем тесте выше, заключался в том, что они унаследовали макеты экрана и сетки, которые настроил человек A, потому что мы выполняем наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека A не истек.
потому что мы проводим наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека A не истек. потому что мы проводим наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека А не истек.