PDA

View Full Version : حرفه ای: ساخت منو به صورت داینامیک توسط تگ li



crazy_1892
شنبه 26 شهریور 1390, 01:12 صبح
سلام دوستان عزیر خسته نباشید

می خواستم ببینم چی جوری می تونم با استفاده از تگ li یک ستون از یک جدول را نمایش بدم از این کار می خوام برای ایجاد یک منو استفاده کنم؟
خیلی جستجو کردم چیزی پیدا نکردم
دوستان عزیز من در asp مبتدی هستم خواهش می کنم توضیح کامل بدین!!!
پیشاپیش ممنون.

reza344
شنبه 26 شهریور 1390, 08:27 صبح
سلام
یک روش ساده اینه که کد اچ تی ام ال Generate کنی، بدین صورت که یه رشته تعریف کنی و تگهای ul و li رو به او اضافه کنی و در بین اونها برای ایجاد حالت منو تگ a اضافه کنی و خاصیت href تگ a رو روی صفحه مورد نظرت ست کنی ،و حالا چون میخواهیم منو اطلاعات خودش رو از بانک بخونه رشته مورد نظر رو فرمت کرده و مقادیر خوانده شده از بانک رو درون آن قرار میدهیم حال میتونی رشته تولید شده رو به خاصیت Text یه کنترل لیترال نسبت بدی مانند مثال زیر:
(البته من در اینجابرای خواندن اطلاعات جدول از LinqToEntity استفاده کردم ، اگه با Ado.Net کار میکنی هم فرقی نمیکنه مقادیر رو میتونی از DataTable بخونی و داخل منو قرار بدی )

using (var context = new DBEntities())
{
var query = from p in context.categories
select new { p.cid, p.cname };

string menu = "<ul>";
foreach (var c in query)
{
menu += "<li><a href='Details.aspx?ID={0}'> {1} </a></li>";
menu = string.Format(menu, c.cid, c.cname);
}
menu += "</ul>";
Literal1.Text = menu;
}

موفق باشی

reza344
شنبه 26 شهریور 1390, 10:25 صبح
سلام مجدد
چون ممکنه نیاز داشته باشی که از منوی ایجاد شده تو تمام صفحاتت استفاده کنی درست نیست که هر دفعه اطلاعات رو از بانک بخونی، ترجیحا اگه تو یه فایل XML ذخیره کنی یا از کش استفاده کنی از نظر Performance خیلی بهتره
موفق باشی

crazy_1892
یک شنبه 27 شهریور 1390, 13:40 عصر
ممنون از پاسخ شما
یه مسئله دیگه این هست که من می خوام منوی تو در تو ایجاد کنم

reza344
یک شنبه 27 شهریور 1390, 13:57 عصر
سلام
به این مقاله (http://how2learnasp.net/article.aspx?code=6e262527-5042-41d7-aba6-fddda0700020#) رجوع کنید خیلی ساده توضیح داده
موفق باشید