View Full Version : سطح دسترسی دادن به این صورت
korosh00
پنج شنبه 23 آبان 1392, 23:01 عصر
سلام
من می خوام هر صفحه ای را خواستم سطح دسترسی بدم
یعنی یک لیست باکس باکس باز شه صفحه ها را نشون بده و یکی نقش ها رو
بگم این صفحه اون نقش در لیست باکس 2 را بگیره
چجوری میشه این طوری کرد .
من قبلا تو وب کانفیگ دستی این کار را می کردم
ممنون
fakhravari
جمعه 24 آبان 1392, 00:10 صبح
وقتی دارید پست خودتان را مشاهده می کنید. زیر مطلب خود تاپیک های مشابه است مطالب دیگر برسی کنید.
2 صورت
ممبرشیپ
طراحی با چند جدول
daffy_duck376
جمعه 24 آبان 1392, 09:24 صبح
ابتدا یه جدول به سیستم اضافه کن و اسم صفحاتی رو که هر کاربر توش بهش دسترسی داره رو توش بزار. موقع لاگین لست اونها رو بخون و به صورت ارایه توی یه سشن ذخیره کن.
یه فایل Global.asax به پروژه اضافه کن . تو متد Application_BeginRequest اسم صفحه ای رو کاربر میخواد بخونه رو بست بیار و توی اون ارایه سرچ کن.اگه نبو کاربر رو هدایت کن به صفحه خطا.
بدست اوردن اسم صفحه جاری
public string GetCurrentPageName()
{
string sPath = System.Web.HttpContext.Current.Request.Url.Absolut ePath;
System.IO.FileInfo oInfo = new System.IO.FileInfo(sPath);
string sRet = oInfo.Name;
return sRet;
}
جستجو در ارایه
public bool page_control( string page_name)
{
bool re =false;
try
{
string[] p = (string[])(HttpContext.Current.Session["Pri"]);
re = Array.Exists(p, element => element == page_name);
}
catch
{
re = false;
}
return (re);
}
korosh00
جمعه 24 آبان 1392, 13:30 عصر
تشکر هنوز متوجه نشدم . نمونه کوچک دارید؟
ممنون
daffy_duck376
جمعه 24 آبان 1392, 15:22 عصر
شما این فایل رو به پروژه اضافه کن.Global.asax
توش یه متد است به نام Application_BeginRequest زمانی اجر میشه که کاربر درخواست یک صفحه از سرور بکنه.
شما از بانک اطلاعاتی نام صفحاتی رو که کاربر مجوز داره ذخیره کردی اونها رو بخون و به صورت ارایه ذخیره کن (اسم سشن رو pri گذاشتم )
دو تابع بالا رو هم بالای اون Application_BeginRequest تعریف کن.
حال تو Application_BeginRequest یه شرط بزار و با تابع GetCurrentPageName نام صفحه ای رو کاربر میخواد رو بدست بیار بریز تو یه string
بعد پاسش بده به تابع page_control که این تابع یه مقدار bool برمیردونه و میگه دسترسی داشت tru در غیر این صورت fasle
دیگه واضح تر بلد نیستم. کد اماده چون مربوط به یه کار بزرگه نمیتونم در اختیارتون بزارم
korosh00
یک شنبه 26 آبان 1392, 01:24 صبح
تو page-load میشه سطح دسترسی به صفحه راتعیین کرد؟
مثلا اگر نقش کاربر "k245" بود بتونه صفحه را ببینه در غیر این صورت ....
در وب کانفیگ چیزی ننویسیم .
تشکر
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.