پیاده سازی تعیین سطح دسترسی کاربران در C# با treeview
با سلام خدمت دوستان
من میخواستم سطح دسترسی کاربران رو با treeview پیاده سازی کنم
و سطح دسترسی که میخوام بسیار بزرگ و دارای جزئیات زیادی هست
روشی که به ذهن خودم رسیده بسیار وقت گیر و پیچیده هست
من روشم رو مینویسم اگر کسی از دویتان روش بهتری تو ذهنش داره ممنون میشم بگه
روش من اینه که
اول به تعداد عملیاتی که قراره کاربر دسترسی داشته باشه فیلد توی جدول یوزر ساختم مثلا ۲۰ تا فیلد از نوع bit که مقدار ۰ یا ۱ برگردونه
و بعد همون عملیات رو مثلا ۲۰ عمل رو به صورت node تو treeview تعریف میکنم ....(به ازای هر فیلد جدول یه نود توی treeview تعریف میشه)
یعنی در treeview بیستا نود خواهیم داشت
بعد هنگام درج تو دیتابیس میگم اگر خاصیت checked اون نود true بود عدد ۱ رو وارد فیلد مربوطه ش کنه تو جدول
و اگر false بود عدد صفر بذاره ...
این کار خیلی وقت گیره
حالا صرفا اگر فقط تعیین دسترسی بود مشکلی نداشت چون ما عملیات ویرایش این دسترسی ها رو هم باید داشته باشیم به نظرم لود کردن این اطلاعات برای ویرایش ممکنه با روشی که تو درج توضیح دادم وقت گیر باشه
مثلا برا ویرایش دوباره دونه دونه فیلدهارو چک کنه اگر ۱ بود نود اون فیلد رو تو treeview برابر true کنه و ...
مهندسای پیج نظر بدید راه من درسته یا اینکه راه بهتری هم هست؟
نقل قول: پیاده سازی تعیین سطح دسترسی کاربران در C# با treeview
سلام ،
موضوع اینجا treeview نیست ! چون شما با FrontEnd پروژه مشکلی ندارین ، BackEnd مهمه.
TreeView نباشه هم خیلی فرقی نمیکنه ، 20 تا CheckBox معمولی هم میتونن true , false برگردونن.
شما یه کلاس تعریف کن با 3 فیلد :
UserID , AccessTitle , AccessValue
یک تابع برای Insert محتویات این کلاس به دیتابیس بنویس ، یک تابع برای Edit و یک تایع برای Load.
چندان پیچیده نیست ، 2..3 ساعته پیاده سازی میشه.
نقل قول: پیاده سازی تعیین سطح دسترسی کاربران در C# با treeview
سلام
روش آقای ShayanFiroozi به نظر خیلی بهینه هستش. ولی خودم تو یکی از برنامه هام همون روش شما را پیاده کردم و یکم وقتگیر بود ولی خوب جواب داده و ویژگی هایی مثل Add, Delete, Edit, Print, ... برای هر کاربر قابل تنظیم هستش. البته در جایی هم میشد تنظیم کنید که برای چه بخش هایی قابلیت Add و برای چه بخش هایی قابلیت Delete داره. یک مقدار وقتگیر بود ولی بسیار کارآمد بود و براحتی Admin برنامه میتونست برای بخش های مختلف برای کاربران مختلف دسترسی های متفاوت تعیین کنه. البته در این خصوص خودمم یک سوال دارم که احتمالا در یک پست جداگانه مطرح میکنم.