#c_sharp #visual_studio
Есть приложение с полной функциональностью. Это приложение для одного типа пользователей.
Они могут редактировать/удалять/добавлять. Но есть и другие пользователи, которым это
делать нельзя.
Каким путем пойти, что бы не создавать несколько похожих приложений, но с небольшими
различиями по функционалу?
В Delphi я применял такой подход.
#IFDEF DISPATCHER
...
#ENDIF
#IFDEF VIEWER
...
#ENDIF
В VisualStudio почему-то так
#if DEBUG
// Работает
#endif
#if RELEASE
// Не работает
#endif
Ответы
Ответ 1
Все дело в настройках проекта. Конфигурация Debug по умолчанию определяет символы DEBUG и TRACE, конфигурация же Release определяет только TRACE (символа RELEASE не существует). Вам поможет вот такой способ: #if !DEBUG #endif Или вот такой: #if DEBUG #else #endif Также в свойствах проекта вы можете определить свои символы для условной компиляции. У меня это делается вот так: Но, вообще говоря, для разных режимов работы обычно хорошо подходят настройки и конфигурационные файлы: if (Properties.Settings.Default.CanEditFoo) { // ... } Также имеет смысл ограничить доступ пользователя на стороне сервера или СУБД. Если в организации используется Active Directory - то хорошим решением будет авторизация пользователей на основе доменных групп, к которым они относятся.
Комментариев нет:
Отправить комментарий