C#.NET
[ enum 권한설정 ]Enum values as bit flags
스티커
2010. 12. 21. 16:12
사용자권한은 보통 하나 이상이다. 그래서 enum을 이용해서 간단하게 사용한다.
ClientLevels.cs (권한설정 enum)
Client.cs (사용자)
간단하게 권한 설정 하는법
MainWindow.xaml.cs
public partial class MainWindow : RibbonWindow { public MainWindow() { InitializeComponent(); this.Loaded += new RoutedEventHandler(MainWindow_Loaded); } void MainWindow_Loaded(object sender, RoutedEventArgs e) { Client client = new Client();//임의의 사람 //블랙리스트와 게시트 권한추가 client._ClientStates = (ClientLevels.ClientStates.IsBlackListed|ClientLevels.ClientStates.IsGuest); client._EmpCode = "0001"; //관리자인지 검사 bool Isguest = (client._ClientStates & ClientLevels.ClientStates.IsAdmin) == ClientLevels.ClientStates.IsAdmin; Debug.WriteLine("관리자냐? "+Isguest.ToString()); //False //IsBlackListed와IsGuest을 유지 상태에서 (IsAdmin)관리자권한추가 client._ClientStates =client._ClientStates | ClientLevels.ClientStates.IsAdmin; Isguest = (client._ClientStates & ClientLevels.ClientStates.IsAdmin) == ClientLevels.ClientStates.IsAdmin; Debug.WriteLine("관리자냐? " + Isguest.ToString()); } }
enum 참고사항